Lines Matching refs:dp

91 	struct iconv_ucs *dp;
95 dp = (struct iconv_ucs *)kobj_create((struct kobj_class*)dcp, M_ICONV, M_WAITOK);
99 dp->convtype = 0;
102 dp->convtype |= KICONV_UCS_COMBINE;
105 dp->convtype |= unicode_family[i].from_flag;
107 dp->convtype |= unicode_family[i].to_flag;
110 dp->convtype |= KICONV_UCS_UCS4;
112 dp->convtype &= ~KICONV_UCS_UCS4;
114 dp->f_ctp = dp->t_ctp = NULL;
115 if (dp->convtype & KICONV_UCS_COMBINE) {
116 if ((dp->convtype & KICONV_UCS_FROM_UTF8) == 0 &&
117 (dp->convtype & KICONV_UCS_FROM_LE) == 0) {
118 iconv_open(ENCODING_UNICODE, from, &dp->f_ctp);
120 if ((dp->convtype & KICONV_UCS_TO_UTF8) == 0 &&
121 (dp->convtype & KICONV_UCS_TO_LE) == 0) {
122 iconv_open(to, ENCODING_UNICODE, &dp->t_ctp);
126 dp->ctype = NULL;
127 if (dp->convtype & (KICONV_UCS_FROM_UTF8 | KICONV_UCS_TO_UTF8))
128 iconv_open(KICONV_WCTYPE_NAME, ENCODING_UTF8, &dp->ctype);
130 dp->d_csp = csp;
131 if (dp->convtype & (KICONV_UCS_FROM_UTF8 | KICONV_UCS_FROM_LE)) {
133 dp->d_cspf = cspf;
138 if (dp->convtype & (KICONV_UCS_TO_UTF8 | KICONV_UCS_TO_LE))
140 *dpp = (void*)dp;
147 struct iconv_ucs *dp = data;
149 if (dp->f_ctp)
150 iconv_close(dp->f_ctp);
151 if (dp->t_ctp)
152 iconv_close(dp->t_ctp);
153 if (dp->ctype)
154 iconv_close(dp->ctype);
155 if (dp->d_cspf)
156 dp->d_cspf->cp_refcount--;
157 else if (dp->convtype & (KICONV_UCS_FROM_UTF8 | KICONV_UCS_FROM_LE))
158 dp->d_csp->cp_refcount--;
159 if (dp->convtype & (KICONV_UCS_TO_UTF8 | KICONV_UCS_TO_LE))
160 dp->d_csp->cp_refcount--;
170 struct iconv_ucs *dp = (struct iconv_ucs*)d2p;
192 if (dp->convtype & KICONV_UCS_FROM_UTF8) {
201 if (casetype == KICONV_FROM_LOWER && dp->ctype) {
202 code = towlower(code, dp->ctype);
203 } else if (casetype == KICONV_FROM_UPPER && dp->ctype) {
204 code = towupper(code, dp->ctype);
215 if (dp->convtype & KICONV_UCS_UCS4) {
231 } else if (dp->convtype & KICONV_UCS_COMBINE && dp->f_ctp) {
236 ret = iconv_convchr_case(dp->f_ctp, &p, &inlen, (char **)&q,
246 if (dp->convtype & KICONV_UCS_FROM_LE) {
255 if (dp->convtype & KICONV_UCS_UCS4 &&
256 dp->convtype & KICONV_UCS_FROM_UTF16) {
272 if (dp->convtype & KICONV_UCS_FROM_LE) {
292 if (dp->convtype & KICONV_UCS_TO_UTF8) {
294 if (ucslen == 4 && dp->convtype & KICONV_UCS_UCS4) {
301 if (casetype == KICONV_LOWER && dp->ctype) {
302 code = towlower(code, dp->ctype);
303 } else if (casetype == KICONV_UPPER && dp->ctype) {
304 code = towupper(code, dp->ctype);
318 } else if (dp->convtype & KICONV_UCS_COMBINE && dp->t_ctp) {
319 ret = iconv_convchr_case(dp->t_ctp, &p, &ucslen, &dst,
336 if (dp->convtype & KICONV_UCS_TO_LE) {
345 if ((dp->convtype & KICONV_UCS_UCS4) == 0 ||
346 (dp->convtype & KICONV_UCS_TO_UTF16) == 0) {
350 if (dp->convtype & KICONV_UCS_TO_LE) {