aboutsummaryrefslogtreecommitdiff
path: root/src/core/ngx_string.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2003-05-06 17:03:16 +0000
committerIgor Sysoev <igor@sysoev.ru>2003-05-06 17:03:16 +0000
commit3d09c8df72bc8f4f6f4a15b59f7802444398dcf4 (patch)
tree5808a30006c81451ec796770e13e5635edb0b0e9 /src/core/ngx_string.c
parent1d8d9eee942ab1d2565048e00d1817147c49f48c (diff)
downloadnginx-3d09c8df72bc8f4f6f4a15b59f7802444398dcf4.tar.gz
nginx-3d09c8df72bc8f4f6f4a15b59f7802444398dcf4.zip
nginx-0.0.1-2003-05-06-21:03:16 import
Diffstat (limited to 'src/core/ngx_string.c')
-rw-r--r--src/core/ngx_string.c32
1 files changed, 30 insertions, 2 deletions
diff --git a/src/core/ngx_string.c b/src/core/ngx_string.c
index 15104985f..56a9861c4 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 @@ char *ngx_cpystrn(char *dst, char *src, size_t n)
}
+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;