diff options
author | Simo Sorce <simo@redhat.com> | 2013-04-12 17:09:06 -0400 |
---|---|---|
committer | Simo Sorce <simo@redhat.com> | 2013-04-23 12:02:50 -0700 |
commit | edf939632c9a1dbab4e769f0c23fe393d7fc8a6a (patch) | |
tree | b6fabfe341663ee072ef6cbe5be7f62e956991fd /proxy/src/gp_proxy.h | |
parent | 7f8078e906b138dcd34f84e0260cba87b63ca62f (diff) | |
download | gss-proxy-edf939632c9a1dbab4e769f0c23fe393d7fc8a6a.tar.gz gss-proxy-edf939632c9a1dbab4e769f0c23fe393d7fc8a6a.tar.xz gss-proxy-edf939632c9a1dbab4e769f0c23fe393d7fc8a6a.zip |
Add support for per-service sockets
This way different processes running as the same user can be configured as
different servervices
Signed-off-by: Simo Sorce <simo@redhat.com>
Reviewed-by: Günther Deschner <gdeschner@redhat.com>
Diffstat (limited to 'proxy/src/gp_proxy.h')
-rw-r--r-- | proxy/src/gp_proxy.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/proxy/src/gp_proxy.h b/proxy/src/gp_proxy.h index 8f5a059..6764f6a 100644 --- a/proxy/src/gp_proxy.h +++ b/proxy/src/gp_proxy.h @@ -51,6 +51,7 @@ struct gp_service { uid_t euid; bool trusted; bool kernel_nfsd; + char *socket; uint32_t mechs; struct gp_cred_krb5 krb5; @@ -76,6 +77,12 @@ struct gssproxy_ctx { verto_ctx *vctx; }; +struct gp_sock_ctx { + struct gssproxy_ctx *gpctx; + const char *socket; + int fd; +}; + struct gp_conn; /* from gp_config.c */ @@ -91,12 +98,14 @@ void init_proc_nfsd(struct gp_config *cfg); void write_pid(void); /* from gp_socket.c */ -int init_unix_socket(const char *file_name); +struct gp_sock_ctx *init_unix_socket(struct gssproxy_ctx *gpctx, + const char *file_name); void accept_sock_conn(verto_ctx *vctx, verto_ev *ev); void gp_conn_free(struct gp_conn *conn); void gp_socket_send_data(verto_ctx *vctx, struct gp_conn *conn, uint8_t *buffer, size_t buflen); struct gp_creds *gp_conn_get_creds(struct gp_conn *conn); +const char *gp_conn_get_socket(struct gp_conn *conn); /* from gp_workers.c */ int gp_workers_init(struct gssproxy_ctx *gpctx); |