Lines 114-119
Link Here
|
114 |
int mm_answer_authpassword(int, Buffer *); |
114 |
int mm_answer_authpassword(int, Buffer *); |
115 |
int mm_answer_bsdauthquery(int, Buffer *); |
115 |
int mm_answer_bsdauthquery(int, Buffer *); |
116 |
int mm_answer_bsdauthrespond(int, Buffer *); |
116 |
int mm_answer_bsdauthrespond(int, Buffer *); |
|
|
117 |
#ifdef WITH_SELINUX |
118 |
int mm_answer_authrole(int, Buffer *); |
119 |
#endif |
117 |
int mm_answer_skeyquery(int, Buffer *); |
120 |
int mm_answer_skeyquery(int, Buffer *); |
118 |
int mm_answer_skeyrespond(int, Buffer *); |
121 |
int mm_answer_skeyrespond(int, Buffer *); |
119 |
int mm_answer_keyallowed(int, Buffer *); |
122 |
int mm_answer_keyallowed(int, Buffer *); |
Lines 181-186
Link Here
|
181 |
{MONITOR_REQ_SIGN, MON_ONCE, mm_answer_sign}, |
184 |
{MONITOR_REQ_SIGN, MON_ONCE, mm_answer_sign}, |
182 |
{MONITOR_REQ_PWNAM, MON_ONCE, mm_answer_pwnamallow}, |
185 |
{MONITOR_REQ_PWNAM, MON_ONCE, mm_answer_pwnamallow}, |
183 |
{MONITOR_REQ_AUTHSERV, MON_ONCE, mm_answer_authserv}, |
186 |
{MONITOR_REQ_AUTHSERV, MON_ONCE, mm_answer_authserv}, |
|
|
187 |
#ifdef WITH_SELINUX |
188 |
{MONITOR_REQ_AUTHROLE, MON_ONCE, mm_answer_authrole}, |
189 |
#endif |
184 |
{MONITOR_REQ_AUTH2_READ_BANNER, MON_ONCE, mm_answer_auth2_read_banner}, |
190 |
{MONITOR_REQ_AUTH2_READ_BANNER, MON_ONCE, mm_answer_auth2_read_banner}, |
185 |
{MONITOR_REQ_AUTHPASSWORD, MON_AUTH, mm_answer_authpassword}, |
191 |
{MONITOR_REQ_AUTHPASSWORD, MON_AUTH, mm_answer_authpassword}, |
186 |
#ifdef USE_PAM |
192 |
#ifdef USE_PAM |
Lines 623-628
Link Here
|
623 |
else { |
629 |
else { |
624 |
/* Allow service/style information on the auth context */ |
630 |
/* Allow service/style information on the auth context */ |
625 |
monitor_permit(mon_dispatch, MONITOR_REQ_AUTHSERV, 1); |
631 |
monitor_permit(mon_dispatch, MONITOR_REQ_AUTHSERV, 1); |
|
|
632 |
#ifdef WITH_SELINUX |
633 |
monitor_permit(mon_dispatch, MONITOR_REQ_AUTHROLE, 1); |
634 |
#endif |
626 |
monitor_permit(mon_dispatch, MONITOR_REQ_AUTH2_READ_BANNER, 1); |
635 |
monitor_permit(mon_dispatch, MONITOR_REQ_AUTH2_READ_BANNER, 1); |
627 |
} |
636 |
} |
628 |
|
637 |
|
Lines 670-675
Link Here
|
670 |
return (0); |
679 |
return (0); |
671 |
} |
680 |
} |
672 |
|
681 |
|
|
|
682 |
#ifdef WITH_SELINUX |
683 |
int |
684 |
mm_answer_authrole(int sock, Buffer *m) |
685 |
{ |
686 |
monitor_permit_authentications(1); |
687 |
|
688 |
authctxt->role = buffer_get_string(m, NULL); |
689 |
debug3("%s: role=%s", |
690 |
__func__, authctxt->role); |
691 |
|
692 |
if (strlen(authctxt->role) == 0) { |
693 |
xfree(authctxt->role); |
694 |
authctxt->role = NULL; |
695 |
} |
696 |
|
697 |
return (0); |
698 |
} |
699 |
#endif |
700 |
|
673 |
int |
701 |
int |
674 |
mm_answer_authpassword(int sock, Buffer *m) |
702 |
mm_answer_authpassword(int sock, Buffer *m) |
675 |
{ |
703 |
{ |