Lines Matching refs:ni
113 static int pam_uid2dn(nssov_info *ni, Operation *op,
126 if (ni->ni_pam_opts & NI_PAM_SASL2DN) {
140 if (BER_BVISEMPTY(&pi->dn) && (ni->ni_pam_opts & NI_PAM_UID2DN)) {
141 nssov_uid2dn(op, ni, &pi->uid, &pi->dn);
153 int pam_do_bind(nssov_info *ni,TFILE *fp,Operation *op,
166 rc = pam_uid2dn(ni, op, pi);
219 int pam_authc(nssov_info *ni,TFILE *fp,Operation *op,uid_t calleruid)
260 !BER_BVISEMPTY(&ni->ni_pam_password_prohibit_message)) {
263 ni->ni_pam_password_prohibit_message.bv_val );
264 ber_str2bv(ni->ni_pam_password_prohibit_message.bv_val, 0, 0, &pi.msg);
272 if (BER_BVISEMPTY(&ni->ni_pam_pwdmgr_dn)) {
289 ber_str2bv(ni->ni_pam_pwdmgr_dn.bv_val, 0, 0, &pi.dn);
294 if (BER_BVISEMPTY(&ni->ni_pam_pwdmgr_pwd)) {
304 strncpy(pi.pwd.bv_val, ni->ni_pam_pwdmgr_pwd.bv_val,
305 ni->ni_pam_pwdmgr_pwd.bv_len);
306 pi.pwd.bv_len = ni->ni_pam_pwdmgr_pwd.bv_len;
312 rc = pam_do_bind(ni, fp, op, &pi);
344 int pam_authz(nssov_info *ni,TFILE *fp,Operation *op)
375 rc = pam_uid2dn(ni, op, &pi);
382 if ((ni->ni_pam_opts & NI_PAM_HOSTSVC) && nssov_pam_svc_ad) {
390 nssov_mapinfo *mi = &ni->ni_maps[NM_host];
412 !BER_BVISEMPTY(&ni->ni_pam_defhost)) {
416 nssov_filter_byname(mi,0,&ni->ni_pam_defhost,&filter);
450 if ((ni->ni_pam_opts & NI_PAM_USERGRP) &&
451 !BER_BVISEMPTY(&ni->ni_pam_group_dn) &&
452 ni->ni_pam_group_ad) {
459 op->o_req_dn = ni->ni_pam_group_dn;
460 op->o_req_ndn = ni->ni_pam_group_dn;
461 ava.aa_desc = ni->ni_pam_group_ad;
473 if ((ni->ni_pam_opts & (NI_PAM_USERHOST|NI_PAM_USERSVC)) ||
474 ni->ni_pam_template_ad ||
475 ni->ni_pam_min_uid || ni->ni_pam_max_uid ) {
482 if ((ni->ni_pam_opts & NI_PAM_USERHOST) && nssov_pam_host_ad) {
493 if ((ni->ni_pam_opts & NI_PAM_USERSVC) && nssov_pam_svc_ad) {
508 if (ni->ni_pam_min_uid || ni->ni_pam_max_uid) {
511 nssov_mapinfo *mi = &ni->ni_maps[NM_passwd];
524 if ((ni->ni_pam_min_uid && id < ni->ni_pam_min_uid) ||
525 (ni->ni_pam_max_uid && id > ni->ni_pam_max_uid)) {
532 if (ni->ni_pam_template_ad) {
533 a = attr_find(e->e_attrs, ni->ni_pam_template_ad);
536 else if (!BER_BVISEMPTY(&ni->ni_pam_template))
537 pi.uid = ni->ni_pam_template;
567 static int pam_sess(nssov_info *ni,TFILE *fp,Operation *op,int action)
613 rc = pam_uid2dn(ni, op, &pi);
619 if (!ni->ni_pam_sessions) {
629 for (i=0; !BER_BVISNULL(&ni->ni_pam_sessions[i]); i++) {
630 if (ni->ni_pam_sessions[i].bv_len != pi.svc.bv_len)
632 if (!strcasecmp(ni->ni_pam_sessions[i].bv_val, pi.svc.bv_val)) {
705 int pam_sess_o(nssov_info *ni,TFILE *fp,Operation *op)
707 return pam_sess(ni,fp,op,NSLCD_ACTION_PAM_SESS_O);
710 int pam_sess_c(nssov_info *ni,TFILE *fp,Operation *op)
712 return pam_sess(ni,fp,op,NSLCD_ACTION_PAM_SESS_C);
715 int pam_pwmod(nssov_info *ni,TFILE *fp,Operation *op,uid_t calleruid)
753 rc = pam_uid2dn(ni, op, &pi);
765 if (!BER_BVISEMPTY(&ni->ni_pam_password_prohibit_message)) {
768 ni->ni_pam_password_prohibit_message.bv_val );
769 ber_str2bv(ni->ni_pam_password_prohibit_message.bv_val, 0, 0, &pi.msg);
775 if (BER_BVISEMPTY(&ni->ni_pam_pwdmgr_dn)) {
827 op->o_dn = ni->ni_pam_pwdmgr_dn;
828 op->o_ndn = ni->ni_pam_pwdmgr_dn;