Lines Matching refs:filter

86 int mbfl_filt_conv_base64enc(int c, mbfl_convert_filter *filter)  in mbfl_filt_conv_base64enc()  argument
90 n = (filter->status & 0xff); in mbfl_filt_conv_base64enc()
92 filter->status++; in mbfl_filt_conv_base64enc()
93 filter->cache = (c & 0xff) << 16; in mbfl_filt_conv_base64enc()
95 filter->status++; in mbfl_filt_conv_base64enc()
96 filter->cache |= (c & 0xff) << 8; in mbfl_filt_conv_base64enc()
98 filter->status &= ~0xff; in mbfl_filt_conv_base64enc()
99 if ((filter->status & MBFL_BASE64_STS_MIME_HEADER) == 0) { in mbfl_filt_conv_base64enc()
100 n = (filter->status & 0xff00) >> 8; in mbfl_filt_conv_base64enc()
102 CK((*filter->output_function)(0x0d, filter->data)); /* CR */ in mbfl_filt_conv_base64enc()
103 CK((*filter->output_function)(0x0a, filter->data)); /* LF */ in mbfl_filt_conv_base64enc()
104 filter->status &= ~0xff00; in mbfl_filt_conv_base64enc()
106 filter->status += 0x400; in mbfl_filt_conv_base64enc()
108 n = filter->cache | (c & 0xff); in mbfl_filt_conv_base64enc()
109 CK((*filter->output_function)(mbfl_base64_table[(n >> 18) & 0x3f], filter->data)); in mbfl_filt_conv_base64enc()
110 CK((*filter->output_function)(mbfl_base64_table[(n >> 12) & 0x3f], filter->data)); in mbfl_filt_conv_base64enc()
111 CK((*filter->output_function)(mbfl_base64_table[(n >> 6) & 0x3f], filter->data)); in mbfl_filt_conv_base64enc()
112 CK((*filter->output_function)(mbfl_base64_table[n & 0x3f], filter->data)); in mbfl_filt_conv_base64enc()
118 int mbfl_filt_conv_base64enc_flush(mbfl_convert_filter *filter) in mbfl_filt_conv_base64enc_flush() argument
122 status = filter->status & 0xff; in mbfl_filt_conv_base64enc_flush()
123 cache = filter->cache; in mbfl_filt_conv_base64enc_flush()
124 len = (filter->status & 0xff00) >> 8; in mbfl_filt_conv_base64enc_flush()
125 filter->status &= ~0xffff; in mbfl_filt_conv_base64enc_flush()
126 filter->cache = 0; in mbfl_filt_conv_base64enc_flush()
129 if ((filter->status & MBFL_BASE64_STS_MIME_HEADER) == 0) { in mbfl_filt_conv_base64enc_flush()
131 CK((*filter->output_function)(0x0d, filter->data)); /* CR */ in mbfl_filt_conv_base64enc_flush()
132 CK((*filter->output_function)(0x0a, filter->data)); /* LF */ in mbfl_filt_conv_base64enc_flush()
135 CK((*filter->output_function)(mbfl_base64_table[(cache >> 18) & 0x3f], filter->data)); in mbfl_filt_conv_base64enc_flush()
136 CK((*filter->output_function)(mbfl_base64_table[(cache >> 12) & 0x3f], filter->data)); in mbfl_filt_conv_base64enc_flush()
138 CK((*filter->output_function)(0x3d, filter->data)); /* '=' */ in mbfl_filt_conv_base64enc_flush()
139 CK((*filter->output_function)(0x3d, filter->data)); /* '=' */ in mbfl_filt_conv_base64enc_flush()
141 CK((*filter->output_function)(mbfl_base64_table[(cache >> 6) & 0x3f], filter->data)); in mbfl_filt_conv_base64enc_flush()
142 CK((*filter->output_function)(0x3d, filter->data)); /* '=' */ in mbfl_filt_conv_base64enc_flush()
151 int mbfl_filt_conv_base64dec(int c, mbfl_convert_filter *filter) in mbfl_filt_conv_base64dec() argument
173 switch (filter->status) { in mbfl_filt_conv_base64dec()
175 filter->status = 1; in mbfl_filt_conv_base64dec()
176 filter->cache = n << 18; in mbfl_filt_conv_base64dec()
179 filter->status = 2; in mbfl_filt_conv_base64dec()
180 filter->cache |= n << 12; in mbfl_filt_conv_base64dec()
183 filter->status = 3; in mbfl_filt_conv_base64dec()
184 filter->cache |= n << 6; in mbfl_filt_conv_base64dec()
187 filter->status = 0; in mbfl_filt_conv_base64dec()
188 n |= filter->cache; in mbfl_filt_conv_base64dec()
189 CK((*filter->output_function)((n >> 16) & 0xff, filter->data)); in mbfl_filt_conv_base64dec()
190 CK((*filter->output_function)((n >> 8) & 0xff, filter->data)); in mbfl_filt_conv_base64dec()
191 CK((*filter->output_function)(n & 0xff, filter->data)); in mbfl_filt_conv_base64dec()
198 int mbfl_filt_conv_base64dec_flush(mbfl_convert_filter *filter) in mbfl_filt_conv_base64dec_flush() argument
202 status = filter->status; in mbfl_filt_conv_base64dec_flush()
203 cache = filter->cache; in mbfl_filt_conv_base64dec_flush()
204 filter->status = 0; in mbfl_filt_conv_base64dec_flush()
205 filter->cache = 0; in mbfl_filt_conv_base64dec_flush()
208 CK((*filter->output_function)((cache >> 16) & 0xff, filter->data)); in mbfl_filt_conv_base64dec_flush()
210 CK((*filter->output_function)((cache >> 8) & 0xff, filter->data)); in mbfl_filt_conv_base64dec_flush()