From b87233035e26cee919dcf46adaec29ba7fdaa51e Mon Sep 17 00:00:00 2001 From: Sumit Bose Date: Fri, 29 Oct 2010 14:48:20 +0200 Subject: Make handle_child_* request public I took the opportunity to move everything related to the handling of the krb5_child into a separate file and cleaned the interfaces and related structures a bit. --- src/providers/krb5/krb5_auth.h | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'src/providers/krb5/krb5_auth.h') diff --git a/src/providers/krb5/krb5_auth.h b/src/providers/krb5/krb5_auth.h index a5405864..130e85db 100644 --- a/src/providers/krb5/krb5_auth.h +++ b/src/providers/krb5/krb5_auth.h @@ -30,6 +30,7 @@ #include "util/sss_krb5.h" #include "providers/dp_backend.h" +#include "providers/child_common.h" #include "providers/krb5/krb5_common.h" #define CCACHE_ENV_NAME "KRB5CCNAME" @@ -37,15 +38,9 @@ #define ILLEGAL_PATH_PATTERN "//|/\\./|/\\.\\./" struct krb5child_req { - pid_t child_pid; - int read_from_child_fd; - int write_to_child_fd; - struct pam_data *pd; struct krb5_ctx *krb5_ctx; - struct tevent_timer *timeout_handler; - const char *ccname; const char *old_ccname; const char *homedir; @@ -57,6 +52,7 @@ struct krb5child_req { struct fo_server *kpasswd_srv; bool active_ccache_present; bool valid_tgt_present; + bool run_as_user; }; errno_t krb5_setup(TALLOC_CTX *mem_ctx, struct pam_data *pd, @@ -71,6 +67,12 @@ struct tevent_req *krb5_auth_send(TALLOC_CTX *mem_ctx, struct krb5_ctx *krb5_ctx); int krb5_auth_recv(struct tevent_req *req, int *pam_status, int *dp_err); +struct tevent_req *handle_child_send(TALLOC_CTX *mem_ctx, + struct tevent_context *ev, + struct krb5child_req *kr); +int handle_child_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx, + uint8_t **buf, ssize_t *len); + errno_t add_user_to_delayed_online_authentication(struct krb5_ctx *krb5_ctx, struct pam_data *pd, uid_t uid); -- cgit