nginx-0.0.1-2003-05-06-21:03:16 import
diff --git a/src/core/ngx_string.c b/src/core/ngx_string.c
index 1510498..56a9861 100644
--- a/src/core/ngx_string.c
+++ b/src/core/ngx_string.c
@@ -6,14 +6,16 @@
char *ngx_cpystrn(char *dst, char *src, size_t n)
{
- if (n == 0)
+ if (n == 0) {
return dst;
+ }
for (/* void */; --n; dst++, src++) {
*dst = *src;
- if (*dst == '\0')
+ if (*dst == '\0') {
return dst;
+ }
}
*dst = '\0';
@@ -22,10 +24,36 @@
}
+int ngx_rstrncmp(char *s1, char *s2, size_t n)
+{
+ if (n == 0) {
+ return 0;
+ }
+
+ n--;
+
+ for ( ;; ) {
+ if (s1[n] != s2[n]) {
+ return (u_char) s1[n] - (u_char) s2[n];
+ }
+
+ if (n == 0) {
+ return 0;
+ }
+
+ n--;
+ }
+}
+
+
int ngx_atoi(char *line, size_t n)
{
int value;
+ if (n == 0) {
+ return NGX_ERROR;
+ }
+
for (value = 0; n--; line++) {
if (*line < '0' || *line > '9') {
return NGX_ERROR;