Lines Matching refs:sb

53 static int nsldapi_sasl_close( LDAP *ld, Sockbuf *sb );
54 static void destroy_sasliobuf(Sockbuf *sb);
148 Sockbuf *sb = (Sockbuf *)arg; in nsldapi_sasl_read() local
155 if (sb == NULL) { in nsldapi_sasl_read()
159 ld = (LDAP *)sb->sb_sasl_prld; in nsldapi_sasl_read()
165 if ((ret = sb->sb_sasl_ilen) > 0) { in nsldapi_sasl_read()
167 SAFEMEMCPY( buf, sb->sb_sasl_iptr, ret ); in nsldapi_sasl_read()
168 if (ret == sb->sb_sasl_ilen) { in nsldapi_sasl_read()
169 sb->sb_sasl_ilen = 0; in nsldapi_sasl_read()
170 sb->sb_sasl_iptr = NULL; in nsldapi_sasl_read()
172 sb->sb_sasl_ilen -= ret; in nsldapi_sasl_read()
173 sb->sb_sasl_iptr += ret; in nsldapi_sasl_read()
179 cp = sb->sb_sasl_ibuf; in nsldapi_sasl_read()
184 if (sb->sb_sasl_fns.lbextiofn_read != NULL) { in nsldapi_sasl_read()
185 ret = sb->sb_sasl_fns.lbextiofn_read( in nsldapi_sasl_read()
187 sb->sb_sasl_fns.lbextiofn_socket_arg); in nsldapi_sasl_read()
189 ret = read( sb->sb_sd, cp, 4 - dlen ); in nsldapi_sasl_read()
204 ret = nsldapi_sasl_pktlen( sb->sb_sasl_ibuf, sb->sb_sasl_bfsz ); in nsldapi_sasl_read()
213 if (sb->sb_sasl_fns.lbextiofn_read != NULL) { in nsldapi_sasl_read()
214 ret = sb->sb_sasl_fns.lbextiofn_read( in nsldapi_sasl_read()
216 sb->sb_sasl_fns.lbextiofn_socket_arg); in nsldapi_sasl_read()
218 ret = read( sb->sb_sd, cp, dlen ); in nsldapi_sasl_read()
234 ret = sasl_decode( sb->sb_sasl_ctx, in nsldapi_sasl_read()
235 sb->sb_sasl_ibuf, blen, in nsldapi_sasl_read()
239 sb->sb_sasl_iptr = NULL; in nsldapi_sasl_read()
240 sb->sb_sasl_ilen = 0; in nsldapi_sasl_read()
246 SAFEMEMCPY( sb->sb_sasl_ibuf, dbuf, dlen ); in nsldapi_sasl_read()
247 sb->sb_sasl_iptr = sb->sb_sasl_ibuf; in nsldapi_sasl_read()
248 sb->sb_sasl_ilen = dlen; in nsldapi_sasl_read()
251 SAFEMEMCPY( buf, sb->sb_sasl_iptr, ret ); in nsldapi_sasl_read()
252 if (ret == sb->sb_sasl_ilen) { in nsldapi_sasl_read()
253 sb->sb_sasl_ilen = 0; in nsldapi_sasl_read()
254 sb->sb_sasl_iptr = NULL; in nsldapi_sasl_read()
256 sb->sb_sasl_ilen -= ret; in nsldapi_sasl_read()
257 sb->sb_sasl_iptr += ret; in nsldapi_sasl_read()
266 Sockbuf *sb = (Sockbuf *)arg; in nsldapi_sasl_write() local
272 if (sb == NULL) { in nsldapi_sasl_write()
276 ret = sasl_getprop(sb->sb_sasl_ctx, SASL_MAXOUTBUF, in nsldapi_sasl_write()
286 ret = sasl_encode( sb->sb_sasl_ctx, cbuf, clen, &obuf, &olen); in nsldapi_sasl_write()
294 if (sb->sb_sasl_fns.lbextiofn_write != NULL) { in nsldapi_sasl_write()
295 ret = sb->sb_sasl_fns.lbextiofn_write( in nsldapi_sasl_write()
297 sb->sb_sasl_fns.lbextiofn_socket_arg); in nsldapi_sasl_write()
299 ret = write( sb->sb_sd, optr, olen); in nsldapi_sasl_write()
318 Sockbuf *sb = (Sockbuf *)arg; in nsldapi_sasl_poll() local
322 if (sb == NULL) { in nsldapi_sasl_poll()
325 ld = (LDAP *)sb->sb_sasl_prld; in nsldapi_sasl_poll()
333 (struct lextiof_socket_private *)sb) { in nsldapi_sasl_poll()
336 sb->sb_sasl_fns.lbextiofn_socket_arg; in nsldapi_sasl_poll()
351 Sockbuf *sb = (Sockbuf *)arg; in nsldapi_sasl_ne_read() local
353 if (sb == NULL) { in nsldapi_sasl_ne_read()
357 return( sb->sb_sasl_fns.lbextiofn_read( s, buf, len, in nsldapi_sasl_ne_read()
358 sb->sb_sasl_fns.lbextiofn_socket_arg) ); in nsldapi_sasl_ne_read()
365 Sockbuf *sb = (Sockbuf *)arg; in nsldapi_sasl_ne_write() local
367 if (sb == NULL) { in nsldapi_sasl_ne_write()
371 return( sb->sb_sasl_fns.lbextiofn_write( s, buf, len, in nsldapi_sasl_ne_write()
372 sb->sb_sasl_fns.lbextiofn_socket_arg) ); in nsldapi_sasl_ne_write()
378 Sockbuf *sb = (Sockbuf *)arg; in nsldapi_sasl_close_socket() local
381 if (sb == NULL) { in nsldapi_sasl_close_socket()
384 ld = (LDAP *)sb->sb_sasl_prld; in nsldapi_sasl_close_socket()
390 ber_sockbuf_set_option( sb, in nsldapi_sasl_close_socket()
392 (void *)&sb->sb_sasl_fns); in nsldapi_sasl_close_socket()
395 nsldapi_sasl_close( ld, sb ); in nsldapi_sasl_close_socket()
399 sb->sb_sasl_fns.lbextiofn_socket_arg ) ); in nsldapi_sasl_close_socket()
406 nsldapi_sasl_install( LDAP *ld, Sockbuf *sb, void *ctx_arg, sasl_ssf_t *ssf) in nsldapi_sasl_install() argument
418 if ( sb == NULL ) { in nsldapi_sasl_install()
421 rc = ber_sockbuf_get_option( sb, in nsldapi_sasl_install()
429 sb->sb_sasl_ctx = (sasl_conn_t *)ctx_arg; in nsldapi_sasl_install()
430 rc = sasl_getprop( sb->sb_sasl_ctx, SASL_SEC_PROPS, in nsldapi_sasl_install()
438 if ((sb->sb_sasl_ibuf = NSLDAPI_MALLOC(bufsiz)) == NULL) { in nsldapi_sasl_install()
441 sb->sb_sasl_iptr = NULL; in nsldapi_sasl_install()
442 sb->sb_sasl_bfsz = bufsiz; in nsldapi_sasl_install()
443 sb->sb_sasl_ilen = 0; in nsldapi_sasl_install()
448 (void) memset( &sb->sb_sasl_fns, 0, LBER_X_EXTIO_FNS_SIZE); in nsldapi_sasl_install()
449 sb->sb_sasl_fns.lbextiofn_size = LBER_X_EXTIO_FNS_SIZE; in nsldapi_sasl_install()
450 rc = ber_sockbuf_get_option( sb, in nsldapi_sasl_install()
452 (void *)&sb->sb_sasl_fns); in nsldapi_sasl_install()
454 destroy_sasliobuf(sb); in nsldapi_sasl_install()
462 destroy_sasliobuf(sb); in nsldapi_sasl_install()
489 (void *) sb; in nsldapi_sasl_install()
494 destroy_sasliobuf(sb); in nsldapi_sasl_install()
497 sb->sb_sasl_prld = (void *)ld; in nsldapi_sasl_install()
506 (void *) sb; in nsldapi_sasl_install()
508 rc = ber_sockbuf_set_option( sb, in nsldapi_sasl_install()
512 destroy_sasliobuf(sb); in nsldapi_sasl_install()
571 Sockbuf *sb; in nsldapi_sasl_open() local
584 sb = ld->ld_defconn->lconn_sb; in nsldapi_sasl_open()
587 if ( sb == NULL || host == NULL ) { in nsldapi_sasl_open()
592 if (sb->sb_sasl_ctx) { in nsldapi_sasl_open()
593 sasl_dispose(&sb->sb_sasl_ctx); in nsldapi_sasl_open()
594 sb->sb_sasl_ctx = NULL; in nsldapi_sasl_open()
615 sb->sb_sasl_ctx = (void *)ctx; in nsldapi_sasl_open()
622 destroy_sasliobuf(Sockbuf *sb) in destroy_sasliobuf() argument
624 if (sb != NULL && sb->sb_sasl_ibuf != NULL) { in destroy_sasliobuf()
625 NSLDAPI_FREE(sb->sb_sasl_ibuf); in destroy_sasliobuf()
626 sb->sb_sasl_ibuf = NULL; in destroy_sasliobuf()
627 sb->sb_sasl_iptr = NULL; in destroy_sasliobuf()
628 sb->sb_sasl_bfsz = 0; in destroy_sasliobuf()
629 sb->sb_sasl_ilen = 0; in destroy_sasliobuf()
634 nsldapi_sasl_close( LDAP *ld, Sockbuf *sb ) in nsldapi_sasl_close() argument
636 sasl_conn_t *ctx = (sasl_conn_t *)sb->sb_sasl_ctx; in nsldapi_sasl_close()
638 destroy_sasliobuf(sb); in nsldapi_sasl_close()
642 sb->sb_sasl_ctx = NULL; in nsldapi_sasl_close()