88#define base32_decoded_length (len ) ((((len)+7)/8)*5)
99
1010
11- static void encode_base32 (int slen , const char * src , int * dlen , char * dst );
12- static int decode_base32 (int slen , const char * src , int * dlen , char * dst );
11+ static void encode_base32 (size_t slen , u_char * src , size_t * dlen , u_char * dst );
12+ static int decode_base32 (size_t slen , u_char * src , size_t * dlen , u_char * dst );
1313
1414
1515ngx_int_t
@@ -31,7 +31,7 @@ ngx_http_set_misc_encode_base32(ngx_http_request_t *r,
3131
3232 src = v -> data ; dst = p ;
3333
34- encode_base32 (( int ) v -> len , ( const char * ) src , ( int * ) & len , ( char * ) dst );
34+ encode_base32 (v -> len , src , & len , dst );
3535
3636 res -> data = p ;
3737 res -> len = len ;
@@ -62,8 +62,7 @@ ngx_http_set_misc_decode_base32(ngx_http_request_t *r,
6262
6363 src = v -> data ; dst = p ;
6464
65- ret = decode_base32 ((int )v -> len , (const char * )src , (int * )& len ,
66- (char * )dst );
65+ ret = decode_base32 (v -> len , src , & len , dst );
6766
6867 if (ret == 0 /* OK */ ) {
6968 res -> data = p ;
@@ -103,17 +102,17 @@ ngx_http_set_misc_decode_base32(ngx_http_request_t *r,
103102 * @param dst 目标数据串指针, 保存 Base32 编码后数据.
104103 * */
105104static void
106- encode_base32 (int slen , const char * src , int * dlen , char * dst )
105+ encode_base32 (size_t slen , u_char * src , size_t * dlen , u_char * dst )
107106{
108107 static unsigned char basis32 [] = "0123456789abcdefghijklmnopqrstuv" ;
109108
110- int len ;
111- const unsigned char * s ;
112- unsigned char * d ;
109+ size_t len ;
110+ u_char * s ;
111+ u_char * d ;
113112
114113 len = slen ;
115- s = ( const unsigned char * ) src ;
116- d = ( unsigned char * ) dst ;
114+ s = src ;
115+ d = dst ;
117116
118117 while (len > 4 ) {
119118 * d ++ = basis32 [s [0 ] >> 3 ];
@@ -178,12 +177,12 @@ encode_base32(int slen, const char *src, int *dlen, char *dst)
178177 * d ++ = '=' ;
179178 }
180179
181- * dlen = d - ( unsigned char * ) dst ;
180+ * dlen = ( size_t ) ( d - dst ) ;
182181}
183182
184183
185184static int
186- decode_base32 (int slen , const char * src , int * dlen , char * dst )
185+ decode_base32 (size_t slen , u_char * src , size_t * dlen , u_char * dst )
187186{
188187 static unsigned char basis32 [] = {
189188 /* 0 - 15 */
@@ -235,9 +234,9 @@ decode_base32(int slen, const char *src, int *dlen, char *dst)
235234 77 , 77 , 77 , 77 , 77 , 77 , 77 , 77 , 77 , 77 , 77 , 77 , 77 , 77 , 77 , 77
236235 };
237236
238- int len , mod ;
239- const unsigned char * s = ( const unsigned char * ) src ;
240- unsigned char * d = ( unsigned char * ) dst ;
237+ size_t len , mod ;
238+ u_char * s = src ;
239+ u_char * d = dst ;
241240
242241 for (len = 0 ; len < slen ; len ++ ) {
243242 if (s [len ] == '=' ) {
@@ -296,7 +295,7 @@ decode_base32(int slen, const char *src, int *dlen, char *dst)
296295 }
297296 }
298297
299- * dlen = d - ( unsigned char * ) dst ;
298+ * dlen = ( size_t ) ( d - dst ) ;
300299
301300 return 0 ;
302301}
0 commit comments