KCM: restore support for Solaris doors IPC mechanism (#379)

This patch restores support for the Solaris doors IPC mechanism, removed
from KCM when lib/ipc was added.
This commit is contained in:
Luke Howard
2018-05-11 20:17:56 +10:00
parent fef64ade9f
commit 73fde33757
11 changed files with 234 additions and 41 deletions

View File

@@ -40,7 +40,6 @@ static const char *config_file; /* location of kcm config file */
size_t max_request = 0; /* maximal size of a request */
char *socket_path = NULL;
char *door_path = NULL;
static char *max_request_str; /* `max_request' as a string */
@@ -123,12 +122,6 @@ static struct getargs args[] = {
"socket-path", 's', arg_string, &socket_path,
"path to kcm domain socket", "path"
},
#ifdef HAVE_DOOR_CREATE
{
"door-path", 's', arg_string, &door_path,
"path to kcm door", "path"
},
#endif
{
"server", 'S', arg_string, &system_server,
"server to get system ticket for", "principal"

View File

@@ -73,10 +73,6 @@
.Fl Fl socket-path= Ns Ar path
.Xc
.Oc
.Oo Xo
.Fl Fl door-path= Ns Ar path
.Xc
.Oc
.Oo Fl S Ar principal \*(Ba Xo
.Fl Fl server= Ns Ar principal
.Xc
@@ -153,8 +149,6 @@ disable credentials cache name constraints
renewable lifetime of system tickets
.It Fl s Ar path , Fl Fl socket-path= Ns Ar path
path to kcm domain socket
.It Fl Fl door-path= Ns Ar path
path to kcm door socket
.It Fl S Ar principal , Fl Fl server= Ns Ar principal
server to get system ticket for
.It Fl t Ar keytab , Fl Fl keytab= Ns Ar keytab

View File

@@ -164,8 +164,6 @@ struct kcm_op {
#define _PATH_KCM_CONF SYSCONFDIR "/kcm.conf"
extern krb5_context kcm_context;
extern char *socket_path;
extern char *door_path;
extern size_t max_request;
extern sig_atomic_t exit_flag;
extern int name_constraints;

View File

@@ -97,6 +97,12 @@ main(int argc, char **argv)
heim_sipc un;
heim_sipc_service_unix(service_name, kcm_service, NULL, &un);
}
#ifdef HAVE_DOOR_CREATE
{
heim_sipc door;
heim_sipc_service_door(service_name, kcm_service, NULL, &door);
}
#endif
roken_detach_finish(NULL, daemon_child);