Mercurial > hg > nginx
comparison src/core/ngx_string.c @ 69:e43f406e4525
nginx-0.0.1-2003-03-20-19:09:44 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Thu, 20 Mar 2003 16:09:44 +0000 |
parents | 4eff17414a43 |
children | a7e45c45a95c |
comparison
equal
deleted
inserted
replaced
68:d549fdc17d7e | 69:e43f406e4525 |
---|---|
1 | 1 |
2 #include <ngx_config.h> | 2 #include <ngx_config.h> |
3 #include <ngx_core.h> | |
3 #include <ngx_string.h> | 4 #include <ngx_string.h> |
4 | 5 |
5 | 6 |
6 char *ngx_cpystrn(char *dst, char *src, size_t n) | 7 char *ngx_cpystrn(char *dst, char *src, size_t n) |
7 { | 8 { |
17 | 18 |
18 *dst = '\0'; | 19 *dst = '\0'; |
19 | 20 |
20 return dst; | 21 return dst; |
21 } | 22 } |
23 | |
24 | |
25 int ngx_atoi(char *line, size_t n) | |
26 { | |
27 int value; | |
28 | |
29 for (value = 0; n--; line++) { | |
30 if (*line < '0' || *line > '9') { | |
31 return NGX_ERROR; | |
32 } | |
33 | |
34 value = value * 10 + (*line - '0'); | |
35 } | |
36 | |
37 return value; | |
38 } | |
39 | |
40 | |
41 #if 0 | |
42 char *ngx_psprintf(ngx_pool_t *p, const char *fmt, ...) | |
43 { | |
44 va_list args; | |
45 | |
46 va_start(args, fmt); | |
47 | |
48 while (*fmt) { | |
49 switch(*fmt++) { | |
50 case '%': | |
51 switch(*fmt++) { | |
52 case 's': | |
53 s = va_arg(args, char *); | |
54 n += ngx_strlen(s); | |
55 break; | |
56 | |
57 default: | |
58 n++; | |
59 } | |
60 default: | |
61 n++; | |
62 } | |
63 } | |
64 | |
65 str = ngx_palloc(p, n); | |
66 | |
67 va_start(args, fmt); | |
68 | |
69 for (i = 0; i < n; i++) { | |
70 switch(*fmt++) { | |
71 case '%': | |
72 switch(*fmt++) { | |
73 case 's': | |
74 s = va_arg(args, char *); | |
75 while (str[i++] = s); | |
76 break; | |
77 | |
78 default: | |
79 n++; | |
80 } | |
81 default: | |
82 str[i] = *fmt; | |
83 } | |
84 } | |
85 | |
86 len += ngx_vsnprintf(errstr + len, sizeof(errstr) - len - 1, fmt, args); | |
87 | |
88 va_end(args); | |
89 | |
90 } | |
91 #endif |