clean up and make work, require libheim-ipcs

This commit is contained in:
Love Hornquist Astrand
2009-11-21 23:54:00 -08:00
parent 368536bc08
commit fe2dfe83a8
10 changed files with 1022 additions and 829 deletions

View File

@@ -2,6 +2,8 @@
* Copyright (c) 2005, PADL Software Pty Ltd.
* All rights reserved.
*
* Portions Copyright (c) 2009 Apple Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
@@ -65,6 +67,15 @@
struct kcm_ccache_data;
struct kcm_creds;
struct kcm_default_cache {
uid_t uid;
pid_t session; /* really au_asid_t */
char *name;
struct kcm_default_cache *next;
};
extern struct kcm_default_cache *default_caches;
struct kcm_creds {
kcmuuid_t uuid;
krb5_creds cred;
@@ -73,16 +84,19 @@ struct kcm_creds {
typedef struct kcm_ccache_data {
char *name;
kcmuuid_t uuid;
unsigned refcnt;
uint16_t flags;
uint16_t mode;
uid_t uid;
gid_t gid;
pid_t session; /* really au_asid_t */
krb5_principal client; /* primary client principal */
krb5_principal server; /* primary server principal (TGS if NULL) */
struct kcm_creds *creds;
krb5_deltat tkt_life;
krb5_deltat renew_life;
int32_t kdc_offset;
union {
krb5_keytab keytab;
krb5_keyblock keyblock;
@@ -132,6 +146,7 @@ typedef struct kcm_client {
pid_t pid;
uid_t uid;
gid_t gid;
pid_t session;
} kcm_client;
#define CLIENT_IS_ROOT(client) ((client)->uid == 0)