# 1 "../krb5/posix/daemon.c" # 1 "/code/illumos-gate/usr/src/lib/gss_mechs/mech_krb5/amd64//" # 1 "" # 1 "" # 1 "../krb5/posix/daemon.c" # 34 "../krb5/posix/daemon.c" # 1 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 1 # 88 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" # 1 "../include/osconf.h" 1 # 43 "../include/osconf.h" # 1 "../include/autoconf.h" 1 # 44 "../include/osconf.h" 2 # 89 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/security/cryptoki.h" 1 # 29 "/code/illumos-gate/proto/root_i386/usr/include/security/cryptoki.h" #pragma ident "%Z%%M% %I% %E% SMI" # 56 "/code/illumos-gate/proto/root_i386/usr/include/security/cryptoki.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" 1 # 37 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/feature_tests.h" 1 # 32 "/code/illumos-gate/proto/root_i386/usr/include/sys/feature_tests.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/ccompile.h" 1 # 33 "/code/illumos-gate/proto/root_i386/usr/include/sys/feature_tests.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/isa_defs.h" 1 # 34 "/code/illumos-gate/proto/root_i386/usr/include/sys/feature_tests.h" 2 # 38 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" 1 # 39 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/machtypes.h" 1 # 30 "/code/illumos-gate/proto/root_i386/usr/include/sys/machtypes.h" #pragma ident "%Z%%M% %I% %E% SMI" # 1 "/code/illumos-gate/proto/root_i386/usr/include/ia32/sys/machtypes.h" 1 # 29 "/code/illumos-gate/proto/root_i386/usr/include/ia32/sys/machtypes.h" #pragma ident "%Z%%M% %I% %E% SMI" # 61 "/code/illumos-gate/proto/root_i386/usr/include/ia32/sys/machtypes.h" typedef struct _label_t { long val[6]; } label_t; typedef unsigned char lock_t; # 37 "/code/illumos-gate/proto/root_i386/usr/include/sys/machtypes.h" 2 # 40 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" 2 # 51 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/int_types.h" 1 # 75 "/code/illumos-gate/proto/root_i386/usr/include/sys/int_types.h" typedef char int8_t; typedef short int16_t; typedef int int32_t; typedef long long int64_t; typedef unsigned char uint8_t; typedef unsigned short uint16_t; typedef unsigned int uint32_t; typedef unsigned long long uint64_t; # 107 "/code/illumos-gate/proto/root_i386/usr/include/sys/int_types.h" typedef int64_t intmax_t; typedef uint64_t uintmax_t; # 123 "/code/illumos-gate/proto/root_i386/usr/include/sys/int_types.h" typedef int intptr_t; typedef unsigned int uintptr_t; typedef char int_fast8_t; typedef int int_fast16_t; typedef int int_fast32_t; typedef long long int_fast64_t; typedef unsigned char uint_fast8_t; typedef unsigned int uint_fast16_t; typedef unsigned int uint_fast32_t; typedef unsigned long long uint_fast64_t; # 162 "/code/illumos-gate/proto/root_i386/usr/include/sys/int_types.h" typedef char int_least8_t; typedef short int_least16_t; typedef int int_least32_t; typedef long long int_least64_t; typedef unsigned char uint_least8_t; typedef unsigned short uint_least16_t; typedef unsigned int uint_least32_t; typedef unsigned long long uint_least64_t; # 52 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" 2 # 68 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef long long longlong_t; typedef unsigned long long u_longlong_t; # 91 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef long t_scalar_t; typedef unsigned long t_uscalar_t; typedef unsigned char uchar_t; typedef unsigned short ushort_t; typedef unsigned int uint_t; typedef unsigned long ulong_t; typedef char *caddr_t; typedef long daddr_t; typedef short cnt_t; typedef int ptrdiff_t; typedef ulong_t pfn_t; typedef ulong_t pgcnt_t; typedef long spgcnt_t; typedef uchar_t use_t; typedef short sysid_t; typedef short index_t; typedef void *timeout_id_t; typedef void *bufcall_id_t; # 141 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef long off_t; # 150 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef longlong_t off64_t; typedef ulong_t ino_t; typedef long blkcnt_t; typedef ulong_t fsblkcnt_t; typedef ulong_t fsfilcnt_t; # 175 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef u_longlong_t ino64_t; typedef longlong_t blkcnt64_t; typedef u_longlong_t fsblkcnt64_t; typedef u_longlong_t fsfilcnt64_t; typedef long blksize_t; typedef enum { B_FALSE, B_TRUE } boolean_t; # 215 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef int64_t pad64_t; typedef uint64_t upad64_t; # 229 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef union { long double _q; int32_t _l[4]; } pad128_t; typedef union { long double _q; uint32_t _l[4]; } upad128_t; typedef longlong_t offset_t; typedef u_longlong_t u_offset_t; typedef u_longlong_t len_t; typedef u_longlong_t diskaddr_t; # 253 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef union { offset_t _f; struct { int32_t _l; int32_t _u; } _p; } lloff_t; # 273 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef union { longlong_t _f; struct { int32_t _l; int32_t _u; } _p; } lldaddr_t; # 292 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef uint_t k_fltset_t; # 306 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef long id_t; typedef id_t lgrp_id_t; typedef uint_t useconds_t; typedef long suseconds_t; # 329 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef ulong_t major_t; typedef ulong_t minor_t; typedef short pri_t; typedef ushort_t cpu_flag_t; # 355 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef ushort_t o_mode_t; typedef short o_dev_t; typedef ushort_t o_uid_t; typedef o_uid_t o_gid_t; typedef short o_nlink_t; typedef short o_pid_t; typedef ushort_t o_ino_t; typedef int key_t; typedef ulong_t mode_t; typedef unsigned int uid_t; typedef uid_t gid_t; typedef uint32_t datalink_id_t; typedef uint32_t vrid_t; typedef id_t taskid_t; typedef id_t projid_t; typedef id_t poolid_t; typedef id_t zoneid_t; typedef id_t ctid_t; typedef uint_t pthread_t; typedef uint_t pthread_key_t; typedef struct _pthread_mutex { struct { uint16_t __pthread_mutex_flag1; uint8_t __pthread_mutex_flag2; uint8_t __pthread_mutex_ceiling; uint16_t __pthread_mutex_type; uint16_t __pthread_mutex_magic; } __pthread_mutex_flags; union { struct { uint8_t __pthread_mutex_pad[8]; } __pthread_mutex_lock64; struct { uint32_t __pthread_ownerpid; uint32_t __pthread_lockword; } __pthread_mutex_lock32; upad64_t __pthread_mutex_owner64; } __pthread_mutex_lock; upad64_t __pthread_mutex_data; } pthread_mutex_t; typedef struct _pthread_cond { struct { uint8_t __pthread_cond_flag[4]; uint16_t __pthread_cond_type; uint16_t __pthread_cond_magic; } __pthread_cond_flags; upad64_t __pthread_cond_data; } pthread_cond_t; typedef struct _pthread_rwlock { int32_t __pthread_rwlock_readers; uint16_t __pthread_rwlock_type; uint16_t __pthread_rwlock_magic; pthread_mutex_t __pthread_rwlock_mutex; pthread_cond_t __pthread_rwlock_readercv; pthread_cond_t __pthread_rwlock_writercv; } pthread_rwlock_t; typedef struct { uint32_t __pthread_barrier_count; uint32_t __pthread_barrier_current; upad64_t __pthread_barrier_cycle; upad64_t __pthread_barrier_reserved; pthread_mutex_t __pthread_barrier_lock; pthread_cond_t __pthread_barrier_cond; } pthread_barrier_t; typedef pthread_mutex_t pthread_spinlock_t; typedef struct _pthread_attr { void *__pthread_attrp; } pthread_attr_t; typedef struct _pthread_mutexattr { void *__pthread_mutexattrp; } pthread_mutexattr_t; typedef struct _pthread_condattr { void *__pthread_condattrp; } pthread_condattr_t; typedef struct _once { upad64_t __pthread_once_pad[4]; } pthread_once_t; typedef struct _pthread_rwlockattr { void *__pthread_rwlockattrp; } pthread_rwlockattr_t; typedef struct { void *__pthread_barrierattrp; } pthread_barrierattr_t; typedef ulong_t dev_t; typedef ulong_t nlink_t; typedef long pid_t; typedef uint_t size_t; # 528 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef int ssize_t; typedef long time_t; typedef long clock_t; typedef int clockid_t; typedef int timer_t; typedef unsigned char unchar; typedef unsigned short ushort; typedef unsigned int uint; typedef unsigned long ulong; # 617 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" typedef unsigned char u_char; typedef unsigned short u_short; typedef unsigned int u_int; typedef unsigned long u_long; typedef struct _quad { int val[2]; } quad_t; typedef quad_t quad; # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/select.h" 1 # 49 "/code/illumos-gate/proto/root_i386/usr/include/sys/select.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/time_impl.h" 1 # 40 "/code/illumos-gate/proto/root_i386/usr/include/sys/time_impl.h" #pragma ident "%Z%%M% %I% %E% SMI" # 59 "/code/illumos-gate/proto/root_i386/usr/include/sys/time_impl.h" typedef struct timespec { time_t tv_sec; long tv_nsec; } timespec_t; # 83 "/code/illumos-gate/proto/root_i386/usr/include/sys/time_impl.h" typedef struct timespec timestruc_t; # 97 "/code/illumos-gate/proto/root_i386/usr/include/sys/time_impl.h" typedef struct itimerspec { struct timespec it_interval; struct timespec it_value; } itimerspec_t; # 50 "/code/illumos-gate/proto/root_i386/usr/include/sys/select.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" 1 # 46 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" struct timeval { time_t tv_sec; suseconds_t tv_usec; }; # 78 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" struct timezone { int tz_minuteswest; int tz_dsttime; }; # 96 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" 1 # 97 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" 2 # 201 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" struct itimerval { struct timeval it_interval; struct timeval it_value; }; # 251 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" typedef longlong_t hrtime_t; # 377 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" int adjtime(struct timeval *, struct timeval *); int futimesat(int, const char *, const struct timeval *); int getitimer(int, struct itimerval *); int utimes(const char *, const struct timeval *); int setitimer(int, struct itimerval *, struct itimerval *); # 419 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" int settimeofday(struct timeval *, void *); hrtime_t gethrtime(void); hrtime_t gethrvtime(void); # 432 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" int gettimeofday(struct timeval *, void *); # 450 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/time.h" 1 # 39 "/code/illumos-gate/proto/root_i386/usr/include/time.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/iso/time_iso.h" 1 # 86 "/code/illumos-gate/proto/root_i386/usr/include/iso/time_iso.h" struct tm { int tm_sec; int tm_min; int tm_hour; int tm_mday; int tm_mon; int tm_year; int tm_wday; int tm_yday; int tm_isdst; }; extern char *asctime(const struct tm *); extern clock_t clock(void); extern char *ctime(const time_t *); extern double difftime(time_t, time_t); extern struct tm *gmtime(const time_t *); extern struct tm *localtime(const time_t *); extern time_t mktime(struct tm *); extern time_t time(time_t *); extern size_t strftime(char *, size_t, const char *, const struct tm *); # 40 "/code/illumos-gate/proto/root_i386/usr/include/time.h" 2 # 83 "/code/illumos-gate/proto/root_i386/usr/include/time.h" extern struct tm *gmtime_r(const time_t *, struct tm *); extern struct tm *localtime_r(const time_t *, struct tm *); # 101 "/code/illumos-gate/proto/root_i386/usr/include/time.h" extern char *strptime(const char *, const char *, struct tm *); # 121 "/code/illumos-gate/proto/root_i386/usr/include/time.h" union sigval { int sival_int; void *sival_ptr; }; struct sigevent { int sigev_notify; int sigev_signo; union sigval sigev_value; void (*sigev_notify_function)(union sigval); pthread_attr_t *sigev_notify_attributes; int __sigev_pad2; }; extern int clock_getres(clockid_t, struct timespec *); extern int clock_gettime(clockid_t, struct timespec *); extern int clock_settime(clockid_t, const struct timespec *); extern int timer_create(clockid_t, struct sigevent *, timer_t *); extern int timer_delete(timer_t); extern int timer_getoverrun(timer_t); extern int timer_gettime(timer_t, struct itimerspec *); extern int timer_settime(timer_t, int, const struct itimerspec *, struct itimerspec *); extern int nanosleep(const struct timespec *, struct timespec *); extern int clock_nanosleep(clockid_t, int, const struct timespec *, struct timespec *); extern void tzset(void); extern char *tzname[2]; extern long _sysconf(int); extern long timezone; extern int daylight; extern time_t timegm(struct tm *); extern int cftime(char *, char *, const time_t *); extern int ascftime(char *, const char *, const struct tm *); extern long altzone; extern struct tm *getdate(const char *); extern int *_getdate_err_addr(void); # 276 "/code/illumos-gate/proto/root_i386/usr/include/time.h" extern char *asctime_r(const struct tm *, char *, int); extern char *ctime_r(const time_t *, char *, int); # 288 "/code/illumos-gate/proto/root_i386/usr/include/time.h" typedef struct _locale *locale_t; extern size_t strftime_l(char *, size_t, const char *, const struct tm *, locale_t); # 451 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" 2 # 462 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/select.h" 1 # 463 "/code/illumos-gate/proto/root_i386/usr/include/sys/time.h" 2 # 52 "/code/illumos-gate/proto/root_i386/usr/include/sys/select.h" 2 # 72 "/code/illumos-gate/proto/root_i386/usr/include/sys/select.h" typedef struct { unsigned int __sigbits[4]; } sigset_t; # 106 "/code/illumos-gate/proto/root_i386/usr/include/sys/select.h" typedef long fd_mask; typedef long fds_mask; # 134 "/code/illumos-gate/proto/root_i386/usr/include/sys/select.h" typedef struct fd_set { long fds_bits[(((1024)+(((sizeof (fds_mask) * 8))-1))/((sizeof (fds_mask) * 8)))]; } fd_set; # 157 "/code/illumos-gate/proto/root_i386/usr/include/sys/select.h" extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *); extern int pselect(int, fd_set *, fd_set *, fd_set *, const struct timespec *, const sigset_t *); # 630 "/code/illumos-gate/proto/root_i386/usr/include/sys/types.h" 2 # 40 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/unistd.h" 1 # 41 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" 2 # 245 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" extern int access(const char *, int); extern int acct(const char *); extern unsigned alarm(unsigned); extern int brk(void *); extern int chdir(const char *); extern int chown(const char *, uid_t, gid_t); extern int chroot(const char *); extern int close(int); extern char *ctermid(char *); extern char *ctermid_r(char *); extern char *cuserid(char *); extern int dup(int); extern int dup2(int, int); extern int dup3(int, int, int); extern void endusershell(void); extern int execl(const char *, const char *, ...); extern int execle(const char *, const char *, ...); extern int execlp(const char *, const char *, ...); extern int execv(const char *, char *const *); extern int execve(const char *, char *const *, char *const *); extern int execvp(const char *, char *const *); extern void _exit(int) __attribute__((__noreturn__)); extern int fattach(int, const char *); extern int fchdir(int); extern int fchown(int, uid_t, gid_t); extern int fchroot(int); extern int fdatasync(int); extern int fdetach(const char *); extern pid_t fork(void); extern pid_t fork1(void); extern pid_t forkall(void); extern long fpathconf(int, int); extern int fsync(int); extern int ftruncate(int, off_t); extern char *getcwd(char *, size_t); extern int getdtablesize(void); extern gid_t getegid(void); extern uid_t geteuid(void); extern gid_t getgid(void); extern int getgroups(int, gid_t *); extern long gethostid(void); extern int gethostname(char *, int); # 359 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" #pragma redefine_extname getlogin getloginx # 359 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" extern char *getlogin(void); # 380 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" extern int getpagesize(void); extern pid_t getpgid(pid_t); extern pid_t getpid(void); extern pid_t getppid(void); extern pid_t getpgrp(void); char *gettxt(const char *, const char *); extern pid_t getsid(pid_t); extern uid_t getuid(void); extern char *getusershell(void); extern char *getwd(char *); extern int ioctl(int, int, ...); extern int isaexec(const char *, char *const *, char *const *); extern int issetugid(void); extern int isatty(int); extern int lchown(const char *, uid_t, gid_t); extern int link(const char *, const char *); extern offset_t llseek(int, offset_t, int); extern int lockf(int, int, off_t); extern off_t lseek(int, off_t, int); extern int nice(int); extern int mincore(caddr_t, size_t, char *); extern long pathconf(const char *, int); extern int pause(void); extern int pipe(int *); extern int pipe2(int *, int); extern ssize_t pread(int, void *, size_t, off_t); extern void profil(unsigned short *, size_t, unsigned long, unsigned int); # 454 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" extern int pthread_atfork(void (*) (void), void (*) (void), void (*) (void)); extern int ptrace(int, pid_t, int, int); extern ssize_t pwrite(int, const void *, size_t, off_t); extern int rcmd_af(char **, unsigned short, const char *, const char *, const char *, int *, int); extern ssize_t read(int, void *, size_t); extern ssize_t readlink(const char *, char *, size_t); extern int rename(const char *, const char *); extern int resolvepath(const char *, char *, size_t); extern int rexec_af(char **, unsigned short, const char *, const char *, const char *, int *, int); extern int rmdir(const char *); extern int rresvport_af(int *, int); extern void *sbrk(intptr_t); extern int setegid(gid_t); extern int seteuid(uid_t); extern int setgid(gid_t); extern int setgroups(int, const gid_t *); extern int sethostname(char *, int); extern int setpgid(pid_t, pid_t); extern pid_t setpgrp(void); extern int setregid(gid_t, gid_t); extern int setreuid(uid_t, uid_t); extern pid_t setsid(void); extern int setuid(uid_t); extern void setusershell(void); extern unsigned sleep(unsigned); extern int stime(const time_t *); extern int symlink(const char *, const char *); extern void sync(void); # 543 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" extern long sysconf(int); extern pid_t tcgetpgrp(int); extern int tcsetpgrp(int, pid_t); extern off_t tell(int); extern int truncate(const char *, off_t); extern char *ttyname(int); extern useconds_t ualarm(useconds_t, useconds_t); extern int unlink(const char *); extern int usleep(useconds_t); extern pid_t vfork(void) __attribute__((__returns_twice__)); extern void vhangup(void); extern ssize_t write(int, const void *, size_t); extern void yield(void); extern int faccessat(int, const char *, int, int); extern int fchownat(int, const char *, uid_t, gid_t, int); extern int linkat(int, const char *, int, const char *, int); extern ssize_t readlinkat(int, const char *, char *, size_t); extern int renameat(int, const char *, int, const char *); extern int symlinkat(const char *, int, const char *); extern int unlinkat(int, const char *, int); extern int get_nprocs(void); extern int get_nprocs_conf(void); extern int ftruncate64(int, off64_t); extern off64_t lseek64(int, off64_t, int); extern ssize_t pread64(int, void *, size_t, off64_t); extern ssize_t pwrite64(int, const void *, size_t, off64_t); extern off64_t tell64(int); extern int truncate64(const char *, off64_t); extern int lockf64(int, int, off64_t); #pragma unknown_control_flow(vfork) # 706 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" # 706 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" #pragma redefine_extname getlogin_r getloginx_r # 706 "/code/illumos-gate/proto/root_i386/usr/include/unistd.h" extern char *getlogin_r(char *, int); extern char *ttyname_r(int, char *, int); # 57 "/code/illumos-gate/proto/root_i386/usr/include/security/cryptoki.h" 2 # 75 "/code/illumos-gate/proto/root_i386/usr/include/security/cryptoki.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11.h" 1 # 226 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" 1 # 44 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef unsigned char CK_BYTE; typedef CK_BYTE CK_CHAR; typedef CK_BYTE CK_UTF8CHAR; typedef CK_BYTE CK_BBOOL; typedef unsigned long int CK_ULONG; typedef long int CK_LONG; typedef CK_ULONG CK_FLAGS; typedef CK_BYTE * CK_BYTE_PTR; typedef CK_CHAR * CK_CHAR_PTR; typedef CK_UTF8CHAR * CK_UTF8CHAR_PTR; typedef CK_ULONG * CK_ULONG_PTR; typedef void * CK_VOID_PTR; typedef CK_VOID_PTR * CK_VOID_PTR_PTR; typedef struct CK_VERSION { CK_BYTE major; CK_BYTE minor; } CK_VERSION; typedef CK_VERSION * CK_VERSION_PTR; typedef struct CK_INFO { CK_VERSION cryptokiVersion; CK_UTF8CHAR manufacturerID[32]; CK_FLAGS flags; CK_UTF8CHAR libraryDescription[32]; CK_VERSION libraryVersion; } CK_INFO; typedef CK_INFO * CK_INFO_PTR; typedef CK_ULONG CK_NOTIFICATION; typedef CK_ULONG CK_SLOT_ID; typedef CK_SLOT_ID * CK_SLOT_ID_PTR; typedef struct CK_SLOT_INFO { CK_UTF8CHAR slotDescription[64]; CK_UTF8CHAR manufacturerID[32]; CK_FLAGS flags; CK_VERSION hardwareVersion; CK_VERSION firmwareVersion; } CK_SLOT_INFO; # 145 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_SLOT_INFO * CK_SLOT_INFO_PTR; typedef struct CK_TOKEN_INFO { CK_UTF8CHAR label[32]; CK_UTF8CHAR manufacturerID[32]; CK_UTF8CHAR model[16]; CK_CHAR serialNumber[16]; CK_FLAGS flags; CK_ULONG ulMaxSessionCount; CK_ULONG ulSessionCount; CK_ULONG ulMaxRwSessionCount; CK_ULONG ulRwSessionCount; CK_ULONG ulMaxPinLen; CK_ULONG ulMinPinLen; CK_ULONG ulTotalPublicMemory; CK_ULONG ulFreePublicMemory; CK_ULONG ulTotalPrivateMemory; CK_ULONG ulFreePrivateMemory; CK_VERSION hardwareVersion; CK_VERSION firmwareVersion; CK_CHAR utcTime[16]; } CK_TOKEN_INFO; # 268 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_TOKEN_INFO * CK_TOKEN_INFO_PTR; typedef CK_ULONG CK_SESSION_HANDLE; typedef CK_SESSION_HANDLE * CK_SESSION_HANDLE_PTR; typedef CK_ULONG CK_USER_TYPE; # 292 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_ULONG CK_STATE; # 301 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef struct CK_SESSION_INFO { CK_SLOT_ID slotID; CK_STATE state; CK_FLAGS flags; CK_ULONG ulDeviceError; } CK_SESSION_INFO; typedef CK_SESSION_INFO * CK_SESSION_INFO_PTR; typedef CK_ULONG CK_OBJECT_HANDLE; typedef CK_OBJECT_HANDLE * CK_OBJECT_HANDLE_PTR; typedef CK_ULONG CK_OBJECT_CLASS; # 352 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_OBJECT_CLASS * CK_OBJECT_CLASS_PTR; typedef CK_ULONG CK_HW_FEATURE_TYPE; # 368 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_ULONG CK_KEY_TYPE; # 425 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_ULONG CK_CERTIFICATE_TYPE; # 440 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_ULONG CK_ATTRIBUTE_TYPE; # 606 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef struct CK_ATTRIBUTE { CK_ATTRIBUTE_TYPE type; CK_VOID_PTR pValue; CK_ULONG ulValueLen; } CK_ATTRIBUTE; typedef CK_ATTRIBUTE * CK_ATTRIBUTE_PTR; typedef struct CK_DATE{ CK_CHAR year[4]; CK_CHAR month[2]; CK_CHAR day[2]; } CK_DATE; typedef CK_ULONG CK_MECHANISM_TYPE; # 998 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_MECHANISM_TYPE * CK_MECHANISM_TYPE_PTR; typedef struct CK_MECHANISM { CK_MECHANISM_TYPE mechanism; CK_VOID_PTR pParameter; CK_ULONG ulParameterLen; } CK_MECHANISM; typedef CK_MECHANISM * CK_MECHANISM_PTR; typedef struct CK_MECHANISM_INFO { CK_ULONG ulMinKeySize; CK_ULONG ulMaxKeySize; CK_FLAGS flags; } CK_MECHANISM_INFO; # 1058 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_MECHANISM_INFO * CK_MECHANISM_INFO_PTR; typedef CK_ULONG CK_RV; # 1204 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_RV (* CK_NOTIFY)( CK_SESSION_HANDLE hSession, CK_NOTIFICATION event, CK_VOID_PTR pApplication ); typedef struct CK_FUNCTION_LIST CK_FUNCTION_LIST; typedef CK_FUNCTION_LIST * CK_FUNCTION_LIST_PTR; typedef CK_FUNCTION_LIST_PTR * CK_FUNCTION_LIST_PTR_PTR; typedef CK_RV (* CK_CREATEMUTEX)( CK_VOID_PTR_PTR ppMutex ); typedef CK_RV (* CK_DESTROYMUTEX)( CK_VOID_PTR pMutex ); typedef CK_RV (* CK_LOCKMUTEX)( CK_VOID_PTR pMutex ); typedef CK_RV (* CK_UNLOCKMUTEX)( CK_VOID_PTR pMutex ); typedef struct CK_C_INITIALIZE_ARGS { CK_CREATEMUTEX CreateMutex; CK_DESTROYMUTEX DestroyMutex; CK_LOCKMUTEX LockMutex; CK_UNLOCKMUTEX UnlockMutex; CK_FLAGS flags; CK_VOID_PTR pReserved; } CK_C_INITIALIZE_ARGS; typedef CK_C_INITIALIZE_ARGS * CK_C_INITIALIZE_ARGS_PTR; # 1279 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_ULONG CK_RSA_PKCS_MGF_TYPE; typedef CK_RSA_PKCS_MGF_TYPE * CK_RSA_PKCS_MGF_TYPE_PTR; # 1297 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_ULONG CK_RSA_PKCS_OAEP_SOURCE_TYPE; typedef CK_RSA_PKCS_OAEP_SOURCE_TYPE * CK_RSA_PKCS_OAEP_SOURCE_TYPE_PTR; typedef struct CK_RSA_PKCS_OAEP_PARAMS { CK_MECHANISM_TYPE hashAlg; CK_RSA_PKCS_MGF_TYPE mgf; CK_RSA_PKCS_OAEP_SOURCE_TYPE source; CK_VOID_PTR pSourceData; CK_ULONG ulSourceDataLen; } CK_RSA_PKCS_OAEP_PARAMS; typedef CK_RSA_PKCS_OAEP_PARAMS * CK_RSA_PKCS_OAEP_PARAMS_PTR; typedef struct CK_RSA_PKCS_PSS_PARAMS { CK_MECHANISM_TYPE hashAlg; CK_RSA_PKCS_MGF_TYPE mgf; CK_ULONG sLen; } CK_RSA_PKCS_PSS_PARAMS; typedef CK_RSA_PKCS_PSS_PARAMS * CK_RSA_PKCS_PSS_PARAMS_PTR; typedef CK_ULONG CK_EC_KDF_TYPE; # 1340 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef struct CK_ECDH1_DERIVE_PARAMS { CK_EC_KDF_TYPE kdf; CK_ULONG ulSharedDataLen; CK_BYTE_PTR pSharedData; CK_ULONG ulPublicDataLen; CK_BYTE_PTR pPublicData; } CK_ECDH1_DERIVE_PARAMS; typedef CK_ECDH1_DERIVE_PARAMS * CK_ECDH1_DERIVE_PARAMS_PTR; typedef struct CK_ECDH2_DERIVE_PARAMS { CK_EC_KDF_TYPE kdf; CK_ULONG ulSharedDataLen; CK_BYTE_PTR pSharedData; CK_ULONG ulPublicDataLen; CK_BYTE_PTR pPublicData; CK_ULONG ulPrivateDataLen; CK_OBJECT_HANDLE hPrivateData; CK_ULONG ulPublicDataLen2; CK_BYTE_PTR pPublicData2; } CK_ECDH2_DERIVE_PARAMS; typedef CK_ECDH2_DERIVE_PARAMS * CK_ECDH2_DERIVE_PARAMS_PTR; typedef struct CK_ECMQV_DERIVE_PARAMS { CK_EC_KDF_TYPE kdf; CK_ULONG ulSharedDataLen; CK_BYTE_PTR pSharedData; CK_ULONG ulPublicDataLen; CK_BYTE_PTR pPublicData; CK_ULONG ulPrivateDataLen; CK_OBJECT_HANDLE hPrivateData; CK_ULONG ulPublicDataLen2; CK_BYTE_PTR pPublicData2; CK_OBJECT_HANDLE publicKey; } CK_ECMQV_DERIVE_PARAMS; typedef CK_ECMQV_DERIVE_PARAMS * CK_ECMQV_DERIVE_PARAMS_PTR; typedef CK_ULONG CK_X9_42_DH_KDF_TYPE; typedef CK_X9_42_DH_KDF_TYPE * CK_X9_42_DH_KDF_TYPE_PTR; # 1397 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef struct CK_X9_42_DH1_DERIVE_PARAMS { CK_X9_42_DH_KDF_TYPE kdf; CK_ULONG ulOtherInfoLen; CK_BYTE_PTR pOtherInfo; CK_ULONG ulPublicDataLen; CK_BYTE_PTR pPublicData; } CK_X9_42_DH1_DERIVE_PARAMS; typedef struct CK_X9_42_DH1_DERIVE_PARAMS * CK_X9_42_DH1_DERIVE_PARAMS_PTR; typedef struct CK_X9_42_DH2_DERIVE_PARAMS { CK_X9_42_DH_KDF_TYPE kdf; CK_ULONG ulOtherInfoLen; CK_BYTE_PTR pOtherInfo; CK_ULONG ulPublicDataLen; CK_BYTE_PTR pPublicData; CK_ULONG ulPrivateDataLen; CK_OBJECT_HANDLE hPrivateData; CK_ULONG ulPublicDataLen2; CK_BYTE_PTR pPublicData2; } CK_X9_42_DH2_DERIVE_PARAMS; typedef CK_X9_42_DH2_DERIVE_PARAMS * CK_X9_42_DH2_DERIVE_PARAMS_PTR; typedef struct CK_X9_42_MQV_DERIVE_PARAMS { CK_X9_42_DH_KDF_TYPE kdf; CK_ULONG ulOtherInfoLen; CK_BYTE_PTR pOtherInfo; CK_ULONG ulPublicDataLen; CK_BYTE_PTR pPublicData; CK_ULONG ulPrivateDataLen; CK_OBJECT_HANDLE hPrivateData; CK_ULONG ulPublicDataLen2; CK_BYTE_PTR pPublicData2; CK_OBJECT_HANDLE publicKey; } CK_X9_42_MQV_DERIVE_PARAMS; typedef CK_X9_42_MQV_DERIVE_PARAMS * CK_X9_42_MQV_DERIVE_PARAMS_PTR; typedef struct CK_KEA_DERIVE_PARAMS { CK_BBOOL isSender; CK_ULONG ulRandomLen; CK_BYTE_PTR pRandomA; CK_BYTE_PTR pRandomB; CK_ULONG ulPublicDataLen; CK_BYTE_PTR pPublicData; } CK_KEA_DERIVE_PARAMS; typedef CK_KEA_DERIVE_PARAMS * CK_KEA_DERIVE_PARAMS_PTR; typedef CK_ULONG CK_RC2_PARAMS; typedef CK_RC2_PARAMS * CK_RC2_PARAMS_PTR; typedef struct CK_RC2_CBC_PARAMS { CK_ULONG ulEffectiveBits; CK_BYTE iv[8]; } CK_RC2_CBC_PARAMS; typedef CK_RC2_CBC_PARAMS * CK_RC2_CBC_PARAMS_PTR; typedef struct CK_RC2_MAC_GENERAL_PARAMS { CK_ULONG ulEffectiveBits; CK_ULONG ulMacLength; } CK_RC2_MAC_GENERAL_PARAMS; typedef CK_RC2_MAC_GENERAL_PARAMS * CK_RC2_MAC_GENERAL_PARAMS_PTR; typedef struct CK_RC5_PARAMS { CK_ULONG ulWordsize; CK_ULONG ulRounds; } CK_RC5_PARAMS; typedef CK_RC5_PARAMS * CK_RC5_PARAMS_PTR; typedef struct CK_RC5_CBC_PARAMS { CK_ULONG ulWordsize; CK_ULONG ulRounds; CK_BYTE_PTR pIv; CK_ULONG ulIvLen; } CK_RC5_CBC_PARAMS; typedef CK_RC5_CBC_PARAMS * CK_RC5_CBC_PARAMS_PTR; typedef struct CK_RC5_MAC_GENERAL_PARAMS { CK_ULONG ulWordsize; CK_ULONG ulRounds; CK_ULONG ulMacLength; } CK_RC5_MAC_GENERAL_PARAMS; typedef CK_RC5_MAC_GENERAL_PARAMS * CK_RC5_MAC_GENERAL_PARAMS_PTR; typedef CK_ULONG CK_MAC_GENERAL_PARAMS; typedef CK_MAC_GENERAL_PARAMS * CK_MAC_GENERAL_PARAMS_PTR; typedef struct CK_DES_CBC_ENCRYPT_DATA_PARAMS { CK_BYTE iv[8]; CK_BYTE_PTR pData; CK_ULONG length; } CK_DES_CBC_ENCRYPT_DATA_PARAMS; typedef CK_DES_CBC_ENCRYPT_DATA_PARAMS * CK_DES_CBC_ENCRYPT_DATA_PARAMS_PTR; typedef struct CK_AES_CBC_ENCRYPT_DATA_PARAMS { CK_BYTE iv[16]; CK_BYTE_PTR pData; CK_ULONG length; } CK_AES_CBC_ENCRYPT_DATA_PARAMS; typedef CK_AES_CBC_ENCRYPT_DATA_PARAMS * CK_AES_CBC_ENCRYPT_DATA_PARAMS_PTR; typedef struct CK_SKIPJACK_PRIVATE_WRAP_PARAMS { CK_ULONG ulPasswordLen; CK_BYTE_PTR pPassword; CK_ULONG ulPublicDataLen; CK_BYTE_PTR pPublicData; CK_ULONG ulPAndGLen; CK_ULONG ulQLen; CK_ULONG ulRandomLen; CK_BYTE_PTR pRandomA; CK_BYTE_PTR pPrimeP; CK_BYTE_PTR pBaseG; CK_BYTE_PTR pSubprimeQ; } CK_SKIPJACK_PRIVATE_WRAP_PARAMS; typedef CK_SKIPJACK_PRIVATE_WRAP_PARAMS * CK_SKIPJACK_PRIVATE_WRAP_PTR; typedef struct CK_SKIPJACK_RELAYX_PARAMS { CK_ULONG ulOldWrappedXLen; CK_BYTE_PTR pOldWrappedX; CK_ULONG ulOldPasswordLen; CK_BYTE_PTR pOldPassword; CK_ULONG ulOldPublicDataLen; CK_BYTE_PTR pOldPublicData; CK_ULONG ulOldRandomLen; CK_BYTE_PTR pOldRandomA; CK_ULONG ulNewPasswordLen; CK_BYTE_PTR pNewPassword; CK_ULONG ulNewPublicDataLen; CK_BYTE_PTR pNewPublicData; CK_ULONG ulNewRandomLen; CK_BYTE_PTR pNewRandomA; } CK_SKIPJACK_RELAYX_PARAMS; typedef CK_SKIPJACK_RELAYX_PARAMS * CK_SKIPJACK_RELAYX_PARAMS_PTR; typedef struct CK_PBE_PARAMS { CK_BYTE_PTR pInitVector; CK_UTF8CHAR_PTR pPassword; CK_ULONG ulPasswordLen; CK_BYTE_PTR pSalt; CK_ULONG ulSaltLen; CK_ULONG ulIteration; } CK_PBE_PARAMS; typedef CK_PBE_PARAMS * CK_PBE_PARAMS_PTR; typedef struct CK_KEY_WRAP_SET_OAEP_PARAMS { CK_BYTE bBC; CK_BYTE_PTR pX; CK_ULONG ulXLen; } CK_KEY_WRAP_SET_OAEP_PARAMS; typedef CK_KEY_WRAP_SET_OAEP_PARAMS * CK_KEY_WRAP_SET_OAEP_PARAMS_PTR; typedef struct CK_SSL3_RANDOM_DATA { CK_BYTE_PTR pClientRandom; CK_ULONG ulClientRandomLen; CK_BYTE_PTR pServerRandom; CK_ULONG ulServerRandomLen; } CK_SSL3_RANDOM_DATA; typedef struct CK_SSL3_MASTER_KEY_DERIVE_PARAMS { CK_SSL3_RANDOM_DATA RandomInfo; CK_VERSION_PTR pVersion; } CK_SSL3_MASTER_KEY_DERIVE_PARAMS; typedef struct CK_SSL3_MASTER_KEY_DERIVE_PARAMS * CK_SSL3_MASTER_KEY_DERIVE_PARAMS_PTR; typedef struct CK_SSL3_KEY_MAT_OUT { CK_OBJECT_HANDLE hClientMacSecret; CK_OBJECT_HANDLE hServerMacSecret; CK_OBJECT_HANDLE hClientKey; CK_OBJECT_HANDLE hServerKey; CK_BYTE_PTR pIVClient; CK_BYTE_PTR pIVServer; } CK_SSL3_KEY_MAT_OUT; typedef CK_SSL3_KEY_MAT_OUT * CK_SSL3_KEY_MAT_OUT_PTR; typedef struct CK_SSL3_KEY_MAT_PARAMS { CK_ULONG ulMacSizeInBits; CK_ULONG ulKeySizeInBits; CK_ULONG ulIVSizeInBits; CK_BBOOL bIsExport; CK_SSL3_RANDOM_DATA RandomInfo; CK_SSL3_KEY_MAT_OUT_PTR pReturnedKeyMaterial; } CK_SSL3_KEY_MAT_PARAMS; typedef CK_SSL3_KEY_MAT_PARAMS * CK_SSL3_KEY_MAT_PARAMS_PTR; typedef struct CK_TLS_PRF_PARAMS { CK_BYTE_PTR pSeed; CK_ULONG ulSeedLen; CK_BYTE_PTR pLabel; CK_ULONG ulLabelLen; CK_BYTE_PTR pOutput; CK_ULONG_PTR pulOutputLen; } CK_TLS_PRF_PARAMS; typedef CK_TLS_PRF_PARAMS * CK_TLS_PRF_PARAMS_PTR; typedef struct CK_WTLS_RANDOM_DATA { CK_BYTE_PTR pClientRandom; CK_ULONG ulClientRandomLen; CK_BYTE_PTR pServerRandom; CK_ULONG ulServerRandomLen; } CK_WTLS_RANDOM_DATA; typedef CK_WTLS_RANDOM_DATA * CK_WTLS_RANDOM_DATA_PTR; typedef struct CK_WTLS_MASTER_KEY_DERIVE_PARAMS { CK_MECHANISM_TYPE DigestMechanism; CK_WTLS_RANDOM_DATA RandomInfo; CK_BYTE_PTR pVersion; } CK_WTLS_MASTER_KEY_DERIVE_PARAMS; typedef CK_WTLS_MASTER_KEY_DERIVE_PARAMS * CK_WTLS_MASTER_KEY_DERIVE_PARAMS_PTR; typedef struct CK_WTLS_PRF_PARAMS { CK_MECHANISM_TYPE DigestMechanism; CK_BYTE_PTR pSeed; CK_ULONG ulSeedLen; CK_BYTE_PTR pLabel; CK_ULONG ulLabelLen; CK_BYTE_PTR pOutput; CK_ULONG_PTR pulOutputLen; } CK_WTLS_PRF_PARAMS; typedef CK_WTLS_PRF_PARAMS * CK_WTLS_PRF_PARAMS_PTR; typedef struct CK_WTLS_KEY_MAT_OUT { CK_OBJECT_HANDLE hMacSecret; CK_OBJECT_HANDLE hKey; CK_BYTE_PTR pIV; } CK_WTLS_KEY_MAT_OUT; typedef CK_WTLS_KEY_MAT_OUT * CK_WTLS_KEY_MAT_OUT_PTR; typedef struct CK_WTLS_KEY_MAT_PARAMS { CK_MECHANISM_TYPE DigestMechanism; CK_ULONG ulMacSizeInBits; CK_ULONG ulKeySizeInBits; CK_ULONG ulIVSizeInBits; CK_ULONG ulSequenceNumber; CK_BBOOL bIsExport; CK_WTLS_RANDOM_DATA RandomInfo; CK_WTLS_KEY_MAT_OUT_PTR pReturnedKeyMaterial; } CK_WTLS_KEY_MAT_PARAMS; typedef CK_WTLS_KEY_MAT_PARAMS * CK_WTLS_KEY_MAT_PARAMS_PTR; typedef struct CK_CMS_SIG_PARAMS { CK_OBJECT_HANDLE certificateHandle; CK_MECHANISM_PTR pSigningMechanism; CK_MECHANISM_PTR pDigestMechanism; CK_UTF8CHAR_PTR pContentType; CK_BYTE_PTR pRequestedAttributes; CK_ULONG ulRequestedAttributesLen; CK_BYTE_PTR pRequiredAttributes; CK_ULONG ulRequiredAttributesLen; } CK_CMS_SIG_PARAMS; typedef CK_CMS_SIG_PARAMS * CK_CMS_SIG_PARAMS_PTR; typedef struct CK_KEY_DERIVATION_STRING_DATA { CK_BYTE_PTR pData; CK_ULONG ulLen; } CK_KEY_DERIVATION_STRING_DATA; typedef CK_KEY_DERIVATION_STRING_DATA * CK_KEY_DERIVATION_STRING_DATA_PTR; # 1752 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_ULONG CK_EXTRACT_PARAMS; typedef CK_EXTRACT_PARAMS * CK_EXTRACT_PARAMS_PTR; typedef CK_ULONG CK_PKCS5_PBKD2_PSEUDO_RANDOM_FUNCTION_TYPE; typedef CK_PKCS5_PBKD2_PSEUDO_RANDOM_FUNCTION_TYPE * CK_PKCS5_PBKD2_PSEUDO_RANDOM_FUNCTION_TYPE_PTR; # 1772 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef CK_ULONG CK_PKCS5_PBKDF2_SALT_SOURCE_TYPE; typedef CK_PKCS5_PBKDF2_SALT_SOURCE_TYPE * CK_PKCS5_PBKDF2_SALT_SOURCE_TYPE_PTR; typedef struct CK_PKCS5_PBKD2_PARAMS { CK_PKCS5_PBKDF2_SALT_SOURCE_TYPE saltSource; CK_VOID_PTR pSaltSourceData; CK_ULONG ulSaltSourceDataLen; CK_ULONG iterations; CK_PKCS5_PBKD2_PSEUDO_RANDOM_FUNCTION_TYPE prf; CK_VOID_PTR pPrfData; CK_ULONG ulPrfDataLen; CK_UTF8CHAR_PTR pPassword; CK_ULONG_PTR ulPasswordLen; } CK_PKCS5_PBKD2_PARAMS; typedef CK_PKCS5_PBKD2_PARAMS * CK_PKCS5_PBKD2_PARAMS_PTR; typedef CK_ULONG CK_OTP_PARAM_TYPE; typedef CK_OTP_PARAM_TYPE CK_PARAM_TYPE; typedef struct CK_OTP_PARAM { CK_OTP_PARAM_TYPE type; CK_VOID_PTR pValue; CK_ULONG ulValueLen; } CK_OTP_PARAM; typedef CK_OTP_PARAM * CK_OTP_PARAM_PTR; typedef struct CK_OTP_PARAMS { CK_OTP_PARAM_PTR pParams; CK_ULONG ulCount; } CK_OTP_PARAMS; typedef CK_OTP_PARAMS * CK_OTP_PARAMS_PTR; typedef struct CK_OTP_SIGNATURE_INFO { CK_OTP_PARAM_PTR pParams; CK_ULONG ulCount; } CK_OTP_SIGNATURE_INFO; typedef CK_OTP_SIGNATURE_INFO * CK_OTP_SIGNATURE_INFO_PTR; # 1842 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11t.h" typedef struct CK_KIP_PARAMS { CK_MECHANISM_PTR pMechanism; CK_OBJECT_HANDLE hKey; CK_BYTE_PTR pSeed; CK_ULONG ulSeedLen; } CK_KIP_PARAMS; typedef CK_KIP_PARAMS * CK_KIP_PARAMS_PTR; typedef struct CK_AES_CTR_PARAMS { CK_ULONG ulCounterBits; CK_BYTE cb[16]; } CK_AES_CTR_PARAMS; typedef CK_AES_CTR_PARAMS * CK_AES_CTR_PARAMS_PTR; typedef struct CK_CAMELLIA_CTR_PARAMS { CK_ULONG ulCounterBits; CK_BYTE cb[16]; } CK_CAMELLIA_CTR_PARAMS; typedef CK_CAMELLIA_CTR_PARAMS * CK_CAMELLIA_CTR_PARAMS_PTR; typedef struct CK_CAMELLIA_CBC_ENCRYPT_DATA_PARAMS { CK_BYTE iv[16]; CK_BYTE_PTR pData; CK_ULONG length; } CK_CAMELLIA_CBC_ENCRYPT_DATA_PARAMS; typedef CK_CAMELLIA_CBC_ENCRYPT_DATA_PARAMS * CK_CAMELLIA_CBC_ENCRYPT_DATA_PARAMS_PTR; typedef struct CK_ARIA_CBC_ENCRYPT_DATA_PARAMS { CK_BYTE iv[16]; CK_BYTE_PTR pData; CK_ULONG length; } CK_ARIA_CBC_ENCRYPT_DATA_PARAMS; typedef CK_ARIA_CBC_ENCRYPT_DATA_PARAMS * CK_ARIA_CBC_ENCRYPT_DATA_PARAMS_PTR; # 227 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11.h" 2 # 242 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" 1 # 28 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" extern CK_RV C_Initialize ( CK_VOID_PTR pInitArgs ); extern CK_RV C_Finalize ( CK_VOID_PTR pReserved ); extern CK_RV C_GetInfo ( CK_INFO_PTR pInfo ); extern CK_RV C_GetFunctionList ( CK_FUNCTION_LIST_PTR_PTR ppFunctionList ); extern CK_RV C_GetSlotList ( CK_BBOOL tokenPresent, CK_SLOT_ID_PTR pSlotList, CK_ULONG_PTR pulCount ); extern CK_RV C_GetSlotInfo ( CK_SLOT_ID slotID, CK_SLOT_INFO_PTR pInfo ); extern CK_RV C_GetTokenInfo ( CK_SLOT_ID slotID, CK_TOKEN_INFO_PTR pInfo ); extern CK_RV C_GetMechanismList ( CK_SLOT_ID slotID, CK_MECHANISM_TYPE_PTR pMechanismList, CK_ULONG_PTR pulCount ); extern CK_RV C_GetMechanismInfo ( CK_SLOT_ID slotID, CK_MECHANISM_TYPE type, CK_MECHANISM_INFO_PTR pInfo ); extern CK_RV C_InitToken ( CK_SLOT_ID slotID, CK_UTF8CHAR_PTR pPin, CK_ULONG ulPinLen, CK_UTF8CHAR_PTR pLabel ); extern CK_RV C_InitPIN ( CK_SESSION_HANDLE hSession, CK_UTF8CHAR_PTR pPin, CK_ULONG ulPinLen ); extern CK_RV C_SetPIN ( CK_SESSION_HANDLE hSession, CK_UTF8CHAR_PTR pOldPin, CK_ULONG ulOldLen, CK_UTF8CHAR_PTR pNewPin, CK_ULONG ulNewLen ); # 169 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" extern CK_RV C_OpenSession ( CK_SLOT_ID slotID, CK_FLAGS flags, CK_VOID_PTR pApplication, CK_NOTIFY Notify, CK_SESSION_HANDLE_PTR phSession ); extern CK_RV C_CloseSession ( CK_SESSION_HANDLE hSession ); extern CK_RV C_CloseAllSessions ( CK_SLOT_ID slotID ); extern CK_RV C_GetSessionInfo ( CK_SESSION_HANDLE hSession, CK_SESSION_INFO_PTR pInfo ); extern CK_RV C_GetOperationState ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pOperationState, CK_ULONG_PTR pulOperationStateLen ); extern CK_RV C_SetOperationState ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pOperationState, CK_ULONG ulOperationStateLen, CK_OBJECT_HANDLE hEncryptionKey, CK_OBJECT_HANDLE hAuthenticationKey ); extern CK_RV C_Login ( CK_SESSION_HANDLE hSession, CK_USER_TYPE userType, CK_UTF8CHAR_PTR pPin, CK_ULONG ulPinLen ); extern CK_RV C_Logout ( CK_SESSION_HANDLE hSession ); extern CK_RV C_CreateObject ( CK_SESSION_HANDLE hSession, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulCount, CK_OBJECT_HANDLE_PTR phObject ); extern CK_RV C_CopyObject ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulCount, CK_OBJECT_HANDLE_PTR phNewObject ); extern CK_RV C_DestroyObject ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject ); extern CK_RV C_GetObjectSize ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject, CK_ULONG_PTR pulSize ); extern CK_RV C_GetAttributeValue ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulCount ); extern CK_RV C_SetAttributeValue ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulCount ); extern CK_RV C_FindObjectsInit ( CK_SESSION_HANDLE hSession, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulCount ); extern CK_RV C_FindObjects ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE_PTR phObject, CK_ULONG ulMaxObjectCount, CK_ULONG_PTR pulObjectCount ); extern CK_RV C_FindObjectsFinal ( CK_SESSION_HANDLE hSession ); extern CK_RV C_EncryptInit ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey ); extern CK_RV C_Encrypt ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pData, CK_ULONG ulDataLen, CK_BYTE_PTR pEncryptedData, CK_ULONG_PTR pulEncryptedDataLen ); extern CK_RV C_EncryptUpdate ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pPart, CK_ULONG ulPartLen, CK_BYTE_PTR pEncryptedPart, CK_ULONG_PTR pulEncryptedPartLen ); extern CK_RV C_EncryptFinal ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pLastEncryptedPart, CK_ULONG_PTR pulLastEncryptedPartLen ); extern CK_RV C_DecryptInit ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey ); extern CK_RV C_Decrypt ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pEncryptedData, CK_ULONG ulEncryptedDataLen, CK_BYTE_PTR pData, CK_ULONG_PTR pulDataLen ); extern CK_RV C_DecryptUpdate ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pEncryptedPart, CK_ULONG ulEncryptedPartLen, CK_BYTE_PTR pPart, CK_ULONG_PTR pulPartLen ); extern CK_RV C_DecryptFinal ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pLastPart, CK_ULONG_PTR pulLastPartLen ); extern CK_RV C_DigestInit ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism ); extern CK_RV C_Digest ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pData, CK_ULONG ulDataLen, CK_BYTE_PTR pDigest, CK_ULONG_PTR pulDigestLen ); extern CK_RV C_DigestUpdate ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pPart, CK_ULONG ulPartLen ); extern CK_RV C_DigestKey ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hKey ); extern CK_RV C_DigestFinal ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pDigest, CK_ULONG_PTR pulDigestLen ); # 541 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" extern CK_RV C_SignInit ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey ); extern CK_RV C_Sign ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pData, CK_ULONG ulDataLen, CK_BYTE_PTR pSignature, CK_ULONG_PTR pulSignatureLen ); extern CK_RV C_SignUpdate ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pPart, CK_ULONG ulPartLen ); extern CK_RV C_SignFinal ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pSignature, CK_ULONG_PTR pulSignatureLen ); extern CK_RV C_SignRecoverInit ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey ); extern CK_RV C_SignRecover ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pData, CK_ULONG ulDataLen, CK_BYTE_PTR pSignature, CK_ULONG_PTR pulSignatureLen ); # 623 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" extern CK_RV C_VerifyInit ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey ); extern CK_RV C_Verify ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pData, CK_ULONG ulDataLen, CK_BYTE_PTR pSignature, CK_ULONG ulSignatureLen ); extern CK_RV C_VerifyUpdate ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pPart, CK_ULONG ulPartLen ); extern CK_RV C_VerifyFinal ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pSignature, CK_ULONG ulSignatureLen ); extern CK_RV C_VerifyRecoverInit ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey ); extern CK_RV C_VerifyRecover ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pSignature, CK_ULONG ulSignatureLen, CK_BYTE_PTR pData, CK_ULONG_PTR pulDataLen ); # 704 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" extern CK_RV C_DigestEncryptUpdate ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pPart, CK_ULONG ulPartLen, CK_BYTE_PTR pEncryptedPart, CK_ULONG_PTR pulEncryptedPartLen ); extern CK_RV C_DecryptDigestUpdate ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pEncryptedPart, CK_ULONG ulEncryptedPartLen, CK_BYTE_PTR pPart, CK_ULONG_PTR pulPartLen ); extern CK_RV C_SignEncryptUpdate ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pPart, CK_ULONG ulPartLen, CK_BYTE_PTR pEncryptedPart, CK_ULONG_PTR pulEncryptedPartLen ); extern CK_RV C_DecryptVerifyUpdate ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pEncryptedPart, CK_ULONG ulEncryptedPartLen, CK_BYTE_PTR pPart, CK_ULONG_PTR pulPartLen ); # 763 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" extern CK_RV C_GenerateKey ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulCount, CK_OBJECT_HANDLE_PTR phKey ); extern CK_RV C_GenerateKeyPair ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_ATTRIBUTE_PTR pPublicKeyTemplate, CK_ULONG ulPublicKeyAttributeCount, CK_ATTRIBUTE_PTR pPrivateKeyTemplate, CK_ULONG ulPrivateKeyAttributeCount, CK_OBJECT_HANDLE_PTR phPublicKey, CK_OBJECT_HANDLE_PTR phPrivateKey ); extern CK_RV C_WrapKey ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hWrappingKey, CK_OBJECT_HANDLE hKey, CK_BYTE_PTR pWrappedKey, CK_ULONG_PTR pulWrappedKeyLen ); extern CK_RV C_UnwrapKey ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hUnwrappingKey, CK_BYTE_PTR pWrappedKey, CK_ULONG ulWrappedKeyLen, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulAttributeCount, CK_OBJECT_HANDLE_PTR phKey ); extern CK_RV C_DeriveKey ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hBaseKey, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulAttributeCount, CK_OBJECT_HANDLE_PTR phKey ); # 855 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" extern CK_RV C_SeedRandom ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pSeed, CK_ULONG ulSeedLen ); extern CK_RV C_GenerateRandom ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR RandomData, CK_ULONG ulRandomLen ); # 882 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" extern CK_RV C_GetFunctionStatus ( CK_SESSION_HANDLE hSession ); extern CK_RV C_CancelFunction ( CK_SESSION_HANDLE hSession ); # 905 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" extern CK_RV C_WaitForSlotEvent ( CK_FLAGS flags, CK_SLOT_ID_PTR pSlot, CK_VOID_PTR pRserved ); # 243 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11.h" 2 # 261 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" 1 # 28 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" typedef CK_RV (* CK_C_Initialize) ( CK_VOID_PTR pInitArgs ); typedef CK_RV (* CK_C_Finalize) ( CK_VOID_PTR pReserved ); typedef CK_RV (* CK_C_GetInfo) ( CK_INFO_PTR pInfo ); typedef CK_RV (* CK_C_GetFunctionList) ( CK_FUNCTION_LIST_PTR_PTR ppFunctionList ); typedef CK_RV (* CK_C_GetSlotList) ( CK_BBOOL tokenPresent, CK_SLOT_ID_PTR pSlotList, CK_ULONG_PTR pulCount ); typedef CK_RV (* CK_C_GetSlotInfo) ( CK_SLOT_ID slotID, CK_SLOT_INFO_PTR pInfo ); typedef CK_RV (* CK_C_GetTokenInfo) ( CK_SLOT_ID slotID, CK_TOKEN_INFO_PTR pInfo ); typedef CK_RV (* CK_C_GetMechanismList) ( CK_SLOT_ID slotID, CK_MECHANISM_TYPE_PTR pMechanismList, CK_ULONG_PTR pulCount ); typedef CK_RV (* CK_C_GetMechanismInfo) ( CK_SLOT_ID slotID, CK_MECHANISM_TYPE type, CK_MECHANISM_INFO_PTR pInfo ); typedef CK_RV (* CK_C_InitToken) ( CK_SLOT_ID slotID, CK_UTF8CHAR_PTR pPin, CK_ULONG ulPinLen, CK_UTF8CHAR_PTR pLabel ); typedef CK_RV (* CK_C_InitPIN) ( CK_SESSION_HANDLE hSession, CK_UTF8CHAR_PTR pPin, CK_ULONG ulPinLen ); typedef CK_RV (* CK_C_SetPIN) ( CK_SESSION_HANDLE hSession, CK_UTF8CHAR_PTR pOldPin, CK_ULONG ulOldLen, CK_UTF8CHAR_PTR pNewPin, CK_ULONG ulNewLen ); # 169 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" typedef CK_RV (* CK_C_OpenSession) ( CK_SLOT_ID slotID, CK_FLAGS flags, CK_VOID_PTR pApplication, CK_NOTIFY Notify, CK_SESSION_HANDLE_PTR phSession ); typedef CK_RV (* CK_C_CloseSession) ( CK_SESSION_HANDLE hSession ); typedef CK_RV (* CK_C_CloseAllSessions) ( CK_SLOT_ID slotID ); typedef CK_RV (* CK_C_GetSessionInfo) ( CK_SESSION_HANDLE hSession, CK_SESSION_INFO_PTR pInfo ); typedef CK_RV (* CK_C_GetOperationState) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pOperationState, CK_ULONG_PTR pulOperationStateLen ); typedef CK_RV (* CK_C_SetOperationState) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pOperationState, CK_ULONG ulOperationStateLen, CK_OBJECT_HANDLE hEncryptionKey, CK_OBJECT_HANDLE hAuthenticationKey ); typedef CK_RV (* CK_C_Login) ( CK_SESSION_HANDLE hSession, CK_USER_TYPE userType, CK_UTF8CHAR_PTR pPin, CK_ULONG ulPinLen ); typedef CK_RV (* CK_C_Logout) ( CK_SESSION_HANDLE hSession ); typedef CK_RV (* CK_C_CreateObject) ( CK_SESSION_HANDLE hSession, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulCount, CK_OBJECT_HANDLE_PTR phObject ); typedef CK_RV (* CK_C_CopyObject) ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulCount, CK_OBJECT_HANDLE_PTR phNewObject ); typedef CK_RV (* CK_C_DestroyObject) ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject ); typedef CK_RV (* CK_C_GetObjectSize) ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject, CK_ULONG_PTR pulSize ); typedef CK_RV (* CK_C_GetAttributeValue) ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulCount ); typedef CK_RV (* CK_C_SetAttributeValue) ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulCount ); typedef CK_RV (* CK_C_FindObjectsInit) ( CK_SESSION_HANDLE hSession, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulCount ); typedef CK_RV (* CK_C_FindObjects) ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE_PTR phObject, CK_ULONG ulMaxObjectCount, CK_ULONG_PTR pulObjectCount ); typedef CK_RV (* CK_C_FindObjectsFinal) ( CK_SESSION_HANDLE hSession ); typedef CK_RV (* CK_C_EncryptInit) ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey ); typedef CK_RV (* CK_C_Encrypt) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pData, CK_ULONG ulDataLen, CK_BYTE_PTR pEncryptedData, CK_ULONG_PTR pulEncryptedDataLen ); typedef CK_RV (* CK_C_EncryptUpdate) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pPart, CK_ULONG ulPartLen, CK_BYTE_PTR pEncryptedPart, CK_ULONG_PTR pulEncryptedPartLen ); typedef CK_RV (* CK_C_EncryptFinal) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pLastEncryptedPart, CK_ULONG_PTR pulLastEncryptedPartLen ); typedef CK_RV (* CK_C_DecryptInit) ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey ); typedef CK_RV (* CK_C_Decrypt) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pEncryptedData, CK_ULONG ulEncryptedDataLen, CK_BYTE_PTR pData, CK_ULONG_PTR pulDataLen ); typedef CK_RV (* CK_C_DecryptUpdate) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pEncryptedPart, CK_ULONG ulEncryptedPartLen, CK_BYTE_PTR pPart, CK_ULONG_PTR pulPartLen ); typedef CK_RV (* CK_C_DecryptFinal) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pLastPart, CK_ULONG_PTR pulLastPartLen ); typedef CK_RV (* CK_C_DigestInit) ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism ); typedef CK_RV (* CK_C_Digest) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pData, CK_ULONG ulDataLen, CK_BYTE_PTR pDigest, CK_ULONG_PTR pulDigestLen ); typedef CK_RV (* CK_C_DigestUpdate) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pPart, CK_ULONG ulPartLen ); typedef CK_RV (* CK_C_DigestKey) ( CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hKey ); typedef CK_RV (* CK_C_DigestFinal) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pDigest, CK_ULONG_PTR pulDigestLen ); # 541 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" typedef CK_RV (* CK_C_SignInit) ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey ); typedef CK_RV (* CK_C_Sign) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pData, CK_ULONG ulDataLen, CK_BYTE_PTR pSignature, CK_ULONG_PTR pulSignatureLen ); typedef CK_RV (* CK_C_SignUpdate) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pPart, CK_ULONG ulPartLen ); typedef CK_RV (* CK_C_SignFinal) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pSignature, CK_ULONG_PTR pulSignatureLen ); typedef CK_RV (* CK_C_SignRecoverInit) ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey ); typedef CK_RV (* CK_C_SignRecover) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pData, CK_ULONG ulDataLen, CK_BYTE_PTR pSignature, CK_ULONG_PTR pulSignatureLen ); # 623 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" typedef CK_RV (* CK_C_VerifyInit) ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey ); typedef CK_RV (* CK_C_Verify) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pData, CK_ULONG ulDataLen, CK_BYTE_PTR pSignature, CK_ULONG ulSignatureLen ); typedef CK_RV (* CK_C_VerifyUpdate) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pPart, CK_ULONG ulPartLen ); typedef CK_RV (* CK_C_VerifyFinal) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pSignature, CK_ULONG ulSignatureLen ); typedef CK_RV (* CK_C_VerifyRecoverInit) ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey ); typedef CK_RV (* CK_C_VerifyRecover) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pSignature, CK_ULONG ulSignatureLen, CK_BYTE_PTR pData, CK_ULONG_PTR pulDataLen ); # 704 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" typedef CK_RV (* CK_C_DigestEncryptUpdate) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pPart, CK_ULONG ulPartLen, CK_BYTE_PTR pEncryptedPart, CK_ULONG_PTR pulEncryptedPartLen ); typedef CK_RV (* CK_C_DecryptDigestUpdate) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pEncryptedPart, CK_ULONG ulEncryptedPartLen, CK_BYTE_PTR pPart, CK_ULONG_PTR pulPartLen ); typedef CK_RV (* CK_C_SignEncryptUpdate) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pPart, CK_ULONG ulPartLen, CK_BYTE_PTR pEncryptedPart, CK_ULONG_PTR pulEncryptedPartLen ); typedef CK_RV (* CK_C_DecryptVerifyUpdate) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pEncryptedPart, CK_ULONG ulEncryptedPartLen, CK_BYTE_PTR pPart, CK_ULONG_PTR pulPartLen ); # 763 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" typedef CK_RV (* CK_C_GenerateKey) ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulCount, CK_OBJECT_HANDLE_PTR phKey ); typedef CK_RV (* CK_C_GenerateKeyPair) ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_ATTRIBUTE_PTR pPublicKeyTemplate, CK_ULONG ulPublicKeyAttributeCount, CK_ATTRIBUTE_PTR pPrivateKeyTemplate, CK_ULONG ulPrivateKeyAttributeCount, CK_OBJECT_HANDLE_PTR phPublicKey, CK_OBJECT_HANDLE_PTR phPrivateKey ); typedef CK_RV (* CK_C_WrapKey) ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hWrappingKey, CK_OBJECT_HANDLE hKey, CK_BYTE_PTR pWrappedKey, CK_ULONG_PTR pulWrappedKeyLen ); typedef CK_RV (* CK_C_UnwrapKey) ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hUnwrappingKey, CK_BYTE_PTR pWrappedKey, CK_ULONG ulWrappedKeyLen, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulAttributeCount, CK_OBJECT_HANDLE_PTR phKey ); typedef CK_RV (* CK_C_DeriveKey) ( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hBaseKey, CK_ATTRIBUTE_PTR pTemplate, CK_ULONG ulAttributeCount, CK_OBJECT_HANDLE_PTR phKey ); # 855 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" typedef CK_RV (* CK_C_SeedRandom) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR pSeed, CK_ULONG ulSeedLen ); typedef CK_RV (* CK_C_GenerateRandom) ( CK_SESSION_HANDLE hSession, CK_BYTE_PTR RandomData, CK_ULONG ulRandomLen ); # 882 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" typedef CK_RV (* CK_C_GetFunctionStatus) ( CK_SESSION_HANDLE hSession ); typedef CK_RV (* CK_C_CancelFunction) ( CK_SESSION_HANDLE hSession ); # 905 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" typedef CK_RV (* CK_C_WaitForSlotEvent) ( CK_FLAGS flags, CK_SLOT_ID_PTR pSlot, CK_VOID_PTR pRserved ); # 262 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11.h" 2 # 279 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11.h" struct CK_FUNCTION_LIST { CK_VERSION version; # 1 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" 1 # 28 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_Initialize C_Initialize; # 40 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_Finalize C_Finalize; # 49 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GetInfo C_GetInfo; # 58 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GetFunctionList C_GetFunctionList; # 71 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GetSlotList C_GetSlotList; # 83 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GetSlotInfo C_GetSlotInfo; # 94 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GetTokenInfo C_GetTokenInfo; # 105 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GetMechanismList C_GetMechanismList; # 117 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GetMechanismInfo C_GetMechanismInfo; # 128 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_InitToken C_InitToken; # 141 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_InitPIN C_InitPIN; # 152 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_SetPIN C_SetPIN; # 169 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_OpenSession C_OpenSession; # 183 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_CloseSession C_CloseSession; # 192 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_CloseAllSessions C_CloseAllSessions; # 201 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GetSessionInfo C_GetSessionInfo; # 212 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GetOperationState C_GetOperationState; # 224 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_SetOperationState C_SetOperationState; # 237 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_Login C_Login; # 249 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_Logout C_Logout; # 261 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_CreateObject C_CreateObject; # 274 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_CopyObject C_CopyObject; # 287 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_DestroyObject C_DestroyObject; # 297 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GetObjectSize C_GetObjectSize; # 309 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GetAttributeValue C_GetAttributeValue; # 322 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_SetAttributeValue C_SetAttributeValue; # 335 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_FindObjectsInit C_FindObjectsInit; # 348 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_FindObjects C_FindObjects; # 361 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_FindObjectsFinal C_FindObjectsFinal; # 373 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_EncryptInit C_EncryptInit; # 384 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_Encrypt C_Encrypt; # 398 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_EncryptUpdate C_EncryptUpdate; # 412 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_EncryptFinal C_EncryptFinal; # 423 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_DecryptInit C_DecryptInit; # 434 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_Decrypt C_Decrypt; # 448 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_DecryptUpdate C_DecryptUpdate; # 462 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_DecryptFinal C_DecryptFinal; # 476 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_DigestInit C_DigestInit; # 486 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_Digest C_Digest; # 500 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_DigestUpdate C_DigestUpdate; # 513 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_DigestKey C_DigestKey; # 524 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_DigestFinal C_DigestFinal; # 541 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_SignInit C_SignInit; # 554 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_Sign C_Sign; # 569 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_SignUpdate C_SignUpdate; # 581 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_SignFinal C_SignFinal; # 593 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_SignRecoverInit C_SignRecoverInit; # 605 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_SignRecover C_SignRecover; # 623 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_VerifyInit C_VerifyInit; # 636 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_Verify C_Verify; # 651 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_VerifyUpdate C_VerifyUpdate; # 663 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_VerifyFinal C_VerifyFinal; # 675 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_VerifyRecoverInit C_VerifyRecoverInit; # 687 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_VerifyRecover C_VerifyRecover; # 704 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_DigestEncryptUpdate C_DigestEncryptUpdate; # 718 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_DecryptDigestUpdate C_DecryptDigestUpdate; # 732 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_SignEncryptUpdate C_SignEncryptUpdate; # 746 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_DecryptVerifyUpdate C_DecryptVerifyUpdate; # 763 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GenerateKey C_GenerateKey; # 777 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GenerateKeyPair C_GenerateKeyPair; # 805 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_WrapKey C_WrapKey; # 820 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_UnwrapKey C_UnwrapKey; # 837 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_DeriveKey C_DeriveKey; # 855 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_SeedRandom C_SeedRandom; # 866 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GenerateRandom C_GenerateRandom; # 882 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_GetFunctionStatus C_GetFunctionStatus; # 892 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_CancelFunction C_CancelFunction; # 905 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11f.h" CK_C_WaitForSlotEvent C_WaitForSlotEvent; # 287 "/code/illumos-gate/proto/root_i386/usr/include/security/pkcs11.h" 2 }; # 76 "/code/illumos-gate/proto/root_i386/usr/include/security/cryptoki.h" 2 # 85 "/code/illumos-gate/proto/root_i386/usr/include/security/cryptoki.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/stdlib.h" 1 # 37 "/code/illumos-gate/proto/root_i386/usr/include/stdlib.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdlib_iso.h" 1 # 54 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdlib_iso.h" unsigned char __mb_cur_max(void); # 63 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdlib_iso.h" typedef struct { int quot; int rem; } div_t; typedef struct { long quot; long rem; } ldiv_t; # 113 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdlib_iso.h" typedef long wchar_t; extern void abort(void) __attribute__((__noreturn__)); extern int abs(int); extern int atexit(void (*)(void)); extern double atof(const char *); extern int atoi(const char *); extern long int atol(const char *); extern void *bsearch(const void *, const void *, size_t, size_t, int (*)(const void *, const void *)); extern void *calloc(size_t, size_t); extern div_t div(int, int); extern void exit(int) __attribute__((__noreturn__)); extern void free(void *); extern char *getenv(const char *); extern long int labs(long); extern ldiv_t ldiv(long, long); extern void *malloc(size_t); extern int mblen(const char *, size_t); extern size_t mbstowcs(wchar_t *, const char *, size_t); extern int mbtowc(wchar_t *, const char *, size_t); extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *)); extern int rand(void); extern void *realloc(void *, size_t); extern void srand(unsigned int); extern double strtod(const char *, char **); extern long int strtol(const char *, char **, int); extern unsigned long int strtoul(const char *, char **, int); extern int system(const char *); extern int wctomb(char *, wchar_t); extern size_t wcstombs(char *, const wchar_t *, size_t); # 38 "/code/illumos-gate/proto/root_i386/usr/include/stdlib.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdlib_c99.h" 1 # 56 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdlib_c99.h" typedef struct { long long quot; long long rem; } lldiv_t; extern void _Exit(int); extern float strtof(const char *, char **); extern long double strtold(const char *, char **); extern long long atoll(const char *); extern long long llabs(long long); extern lldiv_t lldiv(long long, long long); extern long long strtoll(const char *, char **, int); extern unsigned long long strtoull(const char *, char **, int); # 39 "/code/illumos-gate/proto/root_i386/usr/include/stdlib.h" 2 # 120 "/code/illumos-gate/proto/root_i386/usr/include/stdlib.h" extern int rand_r(unsigned int *); extern void _exithandle(void); extern double drand48(void); extern double erand48(unsigned short *); extern long jrand48(unsigned short *); extern void lcong48(unsigned short *); extern long lrand48(void); extern long mrand48(void); extern long nrand48(unsigned short *); extern unsigned short *seed48(unsigned short *); extern void srand48(long); extern int putenv(char *); extern void setkey(const char *); # 161 "/code/illumos-gate/proto/root_i386/usr/include/stdlib.h" extern void swab(const char *, char *, ssize_t); extern int mkstemp(char *); extern int mkstemps(char *, int); extern int mkstemp64(char *); extern int mkstemps64(char *, int); extern long a64l(const char *); extern char *ecvt(double, int, int *, int *); extern char *fcvt(double, int, int *, int *); extern char *gcvt(double, int, char *); extern int getsubopt(char **, char *const *, char **); extern int grantpt(int); extern char *initstate(unsigned, char *, size_t); extern char *l64a(long); extern char *mktemp(char *); extern char *ptsname(int); extern long random(void); extern char *realpath(const char *, char *); extern char *setstate(const char *); extern void srandom(unsigned); extern int unlockpt(int); extern int ttyslot(void); extern void *valloc(size_t); extern int posix_memalign(void **, size_t, size_t); extern int posix_openpt(int); extern int setenv(const char *, const char *, int); extern int unsetenv(const char *); extern char *canonicalize_file_name(const char *); extern int clearenv(void); extern void closefrom(int); extern int daemon(int, int); extern int dup2(int, int); extern int dup3(int, int, int); extern int fdwalk(int (*)(void *, int), void *); extern char *qecvt(long double, int, int *, int *); extern char *qfcvt(long double, int, int *, int *); extern char *qgcvt(long double, int, char *); extern char *getcwd(char *, size_t); extern const char *getexecname(void); # 243 "/code/illumos-gate/proto/root_i386/usr/include/stdlib.h" extern int getopt(int, char *const *, const char *); extern char *optarg; extern int optind, opterr, optopt; extern char *getpass(const char *); extern char *getpassphrase(const char *); extern int getpw(uid_t, char *); extern int isatty(int); extern void *memalign(size_t, size_t); extern char *ttyname(int); extern char *mkdtemp(char *); extern const char *getprogname(void); extern void setprogname(const char *); extern char *lltostr(long long, char *); extern char *ulltostr(unsigned long long, char *); # 86 "/code/illumos-gate/proto/root_i386/usr/include/security/cryptoki.h" 2 CK_RV pkcs11_GetCriteriaSession( boolean_t (*criteria)(CK_SLOT_ID slot_id, void *args, CK_RV *rv), void *args, CK_SESSION_HANDLE_PTR hSession); CK_RV SUNW_C_GetMechSession(CK_MECHANISM_TYPE mech, CK_SESSION_HANDLE_PTR hSession); CK_RV SUNW_C_KeyToObject(CK_SESSION_HANDLE hSession, CK_MECHANISM_TYPE mech, const void *rawkey, size_t rawkey_len, CK_OBJECT_HANDLE_PTR obj); CK_RV pkcs11_PasswdToPBKD2Object(CK_SESSION_HANDLE hSession, char *passphrase, size_t passphrase_len, void *salt, size_t salt_len, CK_ULONG iterations, CK_KEY_TYPE key_type, CK_ULONG key_len, CK_FLAGS key_flags, CK_OBJECT_HANDLE_PTR obj); CK_RV pkcs11_ObjectToKey(CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE obj, void **rawkey, size_t *rawkey_len, boolean_t destroy_obj); CK_RV pkcs11_PasswdToKey(CK_SESSION_HANDLE hSession, char *passphrase, size_t passphrase_len, void *salt, size_t salt_len, CK_KEY_TYPE key_type, CK_ULONG key_len, void **rawkey, size_t *rawkey_len); # 90 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 218 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" typedef uint64_t krb5_ui_8; typedef int64_t krb5_int64; # 253 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/errno.h" 1 # 35 "/code/illumos-gate/proto/root_i386/usr/include/errno.h" #pragma ident "%Z%%M% %I% %E% SMI" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/errno.h" 1 # 43 "/code/illumos-gate/proto/root_i386/usr/include/sys/errno.h" #pragma ident "%Z%%M% %I% %E% SMI" # 42 "/code/illumos-gate/proto/root_i386/usr/include/errno.h" 2 # 55 "/code/illumos-gate/proto/root_i386/usr/include/errno.h" extern int *___errno(); # 254 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 1 "../include/profile.h" 1 # 28 "../include/profile.h" typedef struct _profile_t *profile_t; # 41 "../include/profile.h" typedef char* profile_filespec_t; typedef char* profile_filespec_list_t; typedef const char * const_profile_filespec_t; typedef const char * const_profile_filespec_list_t; long profile_init (const_profile_filespec_t *files, profile_t *ret_profile); long profile_init_path (const_profile_filespec_list_t filelist, profile_t *ret_profile); long profile_flush (profile_t profile); long profile_flush_to_file (profile_t profile, const_profile_filespec_t outfile); long profile_flush_to_buffer (profile_t profile, char **bufp); void profile_free_buffer (profile_t profile, char *buf); long profile_is_writable (profile_t profile, int *writable); long profile_is_modified (profile_t profile, int *modified); void profile_abandon (profile_t profile); void profile_release (profile_t profile); long profile_get_values (profile_t profile, const char *const *names, char ***ret_values); void profile_free_list (char **list); long profile_get_string (profile_t profile, const char *name, const char *subname, const char *subsubname, const char *def_val, char **ret_string); long profile_get_integer (profile_t profile, const char *name, const char *subname, const char *subsubname, int def_val, int *ret_default); long profile_get_boolean (profile_t profile, const char *name, const char *subname, const char *subsubname, int def_val, int *ret_default); long profile_get_relation_names (profile_t profile, const char **names, char ***ret_names); long profile_get_subsection_names (profile_t profile, const char **names, char ***ret_names); long profile_iterator_create (profile_t profile, const char *const *names, int flags, void **ret_iter); void profile_iterator_free (void **iter_p); long profile_iterator (void **iter_p, char **ret_name, char **ret_value); void profile_release_string (char *str); long profile_update_relation (profile_t profile, const char **names, const char *old_value, const char *new_value); long profile_clear_relation (profile_t profile, const char **names); long profile_rename_section (profile_t profile, const char **names, const char *new_name); long profile_add_relation (profile_t profile, const char **names, const char *new_value); long __profile_init(char *filename, profile_t *profile); long __profile_release(profile_t profile); void __profile_abandon(profile_t profile); long __profile_add_domain_mapping(profile_t profile, char *domain, char *realm); long __profile_remove_domain_mapping(profile_t profile, char *realm); long __profile_get_realm_entry(profile_t profile, char *realm, char *name, char ***ret_value); long __profile_add_realm_entry(profile_t profile, char *realm, char *name, char **values); long __profile_get_default_realm(profile_t profile, char **realm); long __profile_get_realms(profile_t profile, char ***realms); long __profile_add_realm(profile_t profile, char *realm, char *master, char **kdcs, boolean_t set_change, boolean_t default_realm); long __profile_remove_xrealm_mapping(profile_t profile, char *realm); long __profile_remove_realm(profile_t profile, char *realm); long __profile_add_xrealm_mapping(profile_t profile, char *source, char *target, char *inter); long __profile_validate(profile_t profile, int *val_err, char **val); # 159 "../include/profile.h" # 1 "../include/com_err.h" 1 # 20 "../include/com_err.h" #pragma ident "%Z%%M% %I% %E% SMI" # 31 "../include/com_err.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/stdarg.h" 1 # 47 "/code/illumos-gate/proto/root_i386/usr/include/stdarg.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdarg_iso.h" 1 # 46 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdarg_iso.h" #pragma ident "%Z%%M% %I% %E% SMI" # 59 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdarg_iso.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/va_impl.h" 1 # 105 "/code/illumos-gate/proto/root_i386/usr/include/sys/va_impl.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/va_list.h" 1 # 108 "/code/illumos-gate/proto/root_i386/usr/include/sys/va_list.h" typedef __builtin_va_list __gnuc_va_list; typedef __builtin_va_list __va_list; # 106 "/code/illumos-gate/proto/root_i386/usr/include/sys/va_impl.h" 2 # 60 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdarg_iso.h" 2 # 71 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdarg_iso.h" typedef __va_list va_list; # 48 "/code/illumos-gate/proto/root_i386/usr/include/stdarg.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdarg_c99.h" 1 # 34 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdarg_c99.h" #pragma ident "%Z%%M% %I% %E% SMI" # 49 "/code/illumos-gate/proto/root_i386/usr/include/stdarg.h" 2 # 32 "../include/com_err.h" 2 typedef long errcode_t; typedef void (*et_old_error_hook_func) (const char *, errcode_t, const char *, va_list ap); struct error_table { char const * const * msgs; long base; unsigned int n_msgs; }; extern void com_err (const char *, errcode_t, const char *, ...); extern void com_err_va (const char *whoami, errcode_t code, const char *fmt, va_list ap); extern const char * error_message (errcode_t) ; # 74 "../include/com_err.h" extern et_old_error_hook_func set_com_err_hook (et_old_error_hook_func); extern et_old_error_hook_func reset_com_err_hook (void); # 160 "../include/profile.h" 2 # 255 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 1 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" 1 # 109 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/thread.h" 1 # 39 "/code/illumos-gate/proto/root_i386/usr/include/thread.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/signal.h" 1 # 44 "/code/illumos-gate/proto/root_i386/usr/include/sys/signal.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/iso/signal_iso.h" 1 # 99 "/code/illumos-gate/proto/root_i386/usr/include/sys/iso/signal_iso.h" extern long _sysconf(int); # 45 "/code/illumos-gate/proto/root_i386/usr/include/sys/signal.h" 2 # 59 "/code/illumos-gate/proto/root_i386/usr/include/sys/signal.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/siginfo.h" 1 # 33 "/code/illumos-gate/proto/root_i386/usr/include/sys/siginfo.h" #pragma ident "%Z%%M% %I% %E% SMI" # 146 "/code/illumos-gate/proto/root_i386/usr/include/sys/siginfo.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/machsig.h" 1 # 34 "/code/illumos-gate/proto/root_i386/usr/include/sys/machsig.h" #pragma ident "%Z%%M% %I% %E% SMI" # 53 "/code/illumos-gate/proto/root_i386/usr/include/sys/machsig.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/vm/faultcode.h" 1 # 42 "/code/illumos-gate/proto/root_i386/usr/include/vm/faultcode.h" #pragma ident "%Z%%M% %I% %E% SMI" # 68 "/code/illumos-gate/proto/root_i386/usr/include/vm/faultcode.h" typedef int faultcode_t; extern int fc_decode(faultcode_t); # 54 "/code/illumos-gate/proto/root_i386/usr/include/sys/machsig.h" 2 # 147 "/code/illumos-gate/proto/root_i386/usr/include/sys/siginfo.h" 2 # 239 "/code/illumos-gate/proto/root_i386/usr/include/sys/siginfo.h" typedef struct siginfo { int si_signo; int si_code; int si_errno; union { int __pad[((128 / sizeof (int)) - 3)]; struct { pid_t __pid; union { struct { uid_t __uid; union sigval __value; } __kill; struct { clock_t __utime; int __status; clock_t __stime; } __cld; } __pdata; ctid_t __ctid; zoneid_t __zoneid; } __proc; struct { void *__addr; int __trapno; caddr_t __pc; } __fault; struct { int __fd; long __band; } __file; struct { caddr_t __faddr; timestruc_t __tstamp; short __syscall; char __nsysarg; char __fault; long __sysarg[8]; int __mstate[10]; } __prof; struct { int32_t __entity; } __rctl; } __data; } siginfo_t; # 381 "/code/illumos-gate/proto/root_i386/usr/include/sys/siginfo.h" typedef struct k_siginfo { int si_signo; int si_code; int si_errno; union { struct { pid_t __pid; union { struct { uid_t __uid; union sigval __value; } __kill; struct { clock_t __utime; int __status; clock_t __stime; } __cld; } __pdata; ctid_t __ctid; zoneid_t __zoneid; } __proc; struct { void *__addr; int __trapno; caddr_t __pc; } __fault; struct { int __fd; long __band; } __file; struct { caddr_t __faddr; timestruc_t __tstamp; short __syscall; char __nsysarg; char __fault; } __prof; struct { int32_t __entity; } __rctl; } __data; } k_siginfo_t; typedef struct sigqueue { struct sigqueue *sq_next; k_siginfo_t sq_info; void (*sq_func)(struct sigqueue *); void *sq_backptr; int sq_external; } sigqueue_t; # 60 "/code/illumos-gate/proto/root_i386/usr/include/sys/signal.h" 2 # 70 "/code/illumos-gate/proto/root_i386/usr/include/sys/signal.h" typedef struct { unsigned int __sigbits[3]; } k_sigset_t; # 88 "/code/illumos-gate/proto/root_i386/usr/include/sys/signal.h" struct sigaction { int sa_flags; union { void (*_handler)(); void (*_sigaction)(int, siginfo_t *, void *); } _funcptr; sigset_t sa_mask; int sa_resv[2]; }; # 175 "/code/illumos-gate/proto/root_i386/usr/include/sys/signal.h" typedef struct sigaltstack { void *ss_sp; size_t ss_size; int ss_flags; } stack_t; # 204 "/code/illumos-gate/proto/root_i386/usr/include/sys/signal.h" typedef struct signotify_id { pid_t sn_pid; int sn_index; int sn_pad; } signotify_id_t; # 234 "/code/illumos-gate/proto/root_i386/usr/include/sys/signal.h" struct sigstack { void *ss_sp; int ss_onstack; }; # 40 "/code/illumos-gate/proto/root_i386/usr/include/thread.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/synch.h" 1 # 36 "/code/illumos-gate/proto/root_i386/usr/include/synch.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/machlock.h" 1 # 29 "/code/illumos-gate/proto/root_i386/usr/include/sys/machlock.h" #pragma ident "%Z%%M% %I% %E% SMI" # 60 "/code/illumos-gate/proto/root_i386/usr/include/sys/machlock.h" typedef lock_t disp_lock_t; # 79 "/code/illumos-gate/proto/root_i386/usr/include/sys/machlock.h" extern volatile int hres_lock; extern hrtime_t hrtime_base; extern int clock_res; # 37 "/code/illumos-gate/proto/root_i386/usr/include/synch.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/synch.h" 1 # 30 "/code/illumos-gate/proto/root_i386/usr/include/sys/synch.h" #pragma ident "%Z%%M% %I% %E% SMI" # 57 "/code/illumos-gate/proto/root_i386/usr/include/sys/synch.h" typedef struct _lwp_mutex { struct { uint16_t flag1; uint8_t flag2; uint8_t ceiling; union { uint16_t bcptype; struct { uint8_t count_type1; uint8_t count_type2; } mtype_rcount; } mbcp_type_un; uint16_t magic; } flags; union { struct { uint8_t pad[8]; } lock64; struct { uint32_t ownerpid; uint32_t lockword; } lock32; upad64_t owner64; } lock; upad64_t data; } lwp_mutex_t; # 91 "/code/illumos-gate/proto/root_i386/usr/include/sys/synch.h" typedef struct _lwp_cond { struct { uint8_t flag[4]; uint16_t type; uint16_t magic; } flags; upad64_t data; } lwp_cond_t; typedef struct _lwp_sema { uint32_t count; uint16_t type; uint16_t magic; uint8_t flags[8]; upad64_t data; } lwp_sema_t; # 118 "/code/illumos-gate/proto/root_i386/usr/include/sys/synch.h" typedef struct _lwp_rwlock { int32_t readers; uint16_t type; uint16_t magic; lwp_mutex_t mutex; lwp_cond_t readercv; lwp_cond_t writercv; } lwp_rwlock_t; # 39 "/code/illumos-gate/proto/root_i386/usr/include/synch.h" 2 # 50 "/code/illumos-gate/proto/root_i386/usr/include/synch.h" typedef struct _sema { uint32_t count; uint16_t type; uint16_t magic; upad64_t pad1[3]; upad64_t pad2[2]; } sema_t; # 70 "/code/illumos-gate/proto/root_i386/usr/include/synch.h" typedef lwp_mutex_t mutex_t; typedef lwp_cond_t cond_t; # 81 "/code/illumos-gate/proto/root_i386/usr/include/synch.h" typedef struct _rwlock { int32_t readers; uint16_t type; uint16_t magic; mutex_t mutex; cond_t readercv; cond_t writercv; } rwlock_t; int _lwp_mutex_lock(lwp_mutex_t *); int _lwp_mutex_unlock(lwp_mutex_t *); int _lwp_mutex_trylock(lwp_mutex_t *); int _lwp_cond_wait(lwp_cond_t *, lwp_mutex_t *); int _lwp_cond_timedwait(lwp_cond_t *, lwp_mutex_t *, timespec_t *); int _lwp_cond_reltimedwait(lwp_cond_t *, lwp_mutex_t *, timespec_t *); int _lwp_cond_signal(lwp_cond_t *); int _lwp_cond_broadcast(lwp_cond_t *); int _lwp_sema_init(lwp_sema_t *, int); int _lwp_sema_wait(lwp_sema_t *); int _lwp_sema_trywait(lwp_sema_t *); int _lwp_sema_post(lwp_sema_t *); int cond_init(cond_t *, int, void *); int cond_destroy(cond_t *); int cond_wait(cond_t *, mutex_t *); int cond_timedwait(cond_t *, mutex_t *, const timespec_t *); int cond_reltimedwait(cond_t *, mutex_t *, const timespec_t *); int cond_signal(cond_t *); int cond_broadcast(cond_t *); int mutex_init(mutex_t *, int, void *); int mutex_destroy(mutex_t *); int mutex_consistent(mutex_t *); int mutex_lock(mutex_t *); int mutex_trylock(mutex_t *); int mutex_unlock(mutex_t *); int rwlock_init(rwlock_t *, int, void *); int rwlock_destroy(rwlock_t *); int rw_rdlock(rwlock_t *); int rw_wrlock(rwlock_t *); int rw_unlock(rwlock_t *); int rw_tryrdlock(rwlock_t *); int rw_trywrlock(rwlock_t *); int sema_init(sema_t *, unsigned int, int, void *); int sema_destroy(sema_t *); int sema_wait(sema_t *); int sema_timedwait(sema_t *, const timespec_t *); int sema_reltimedwait(sema_t *, const timespec_t *); int sema_post(sema_t *); int sema_trywait(sema_t *); # 204 "/code/illumos-gate/proto/root_i386/usr/include/synch.h" int _sema_held(void *); int _rw_read_held(void *); int _rw_write_held(void *); int _mutex_held(void *); void smt_pause(void); # 42 "/code/illumos-gate/proto/root_i386/usr/include/thread.h" 2 typedef unsigned int thread_t; typedef unsigned int thread_key_t; extern int thr_create(void *, size_t, void *(*)(void *), void *, long, thread_t *); extern int thr_join(thread_t, thread_t *, void **); extern int thr_setconcurrency(int); extern int thr_getconcurrency(void); extern void thr_exit(void *) __attribute__((__noreturn__)); extern thread_t thr_self(void); extern int thr_sigsetmask(int, const sigset_t *, sigset_t *); # 75 "/code/illumos-gate/proto/root_i386/usr/include/thread.h" extern int thr_stksegment(stack_t *); extern int thr_main(void); extern int thr_kill(thread_t, int); extern int thr_suspend(thread_t); extern int thr_continue(thread_t); extern void thr_yield(void); extern int thr_setprio(thread_t, int); extern int thr_getprio(thread_t, int *); extern int thr_keycreate(thread_key_t *, void(*)(void *)); extern int thr_keycreate_once(thread_key_t *, void(*)(void *)); extern int thr_setspecific(thread_key_t, void *); extern int thr_getspecific(thread_key_t, void **); extern size_t thr_min_stack(void); # 110 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/limits.h" 1 # 38 "/code/illumos-gate/proto/root_i386/usr/include/limits.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/iso/limits_iso.h" 1 # 46 "/code/illumos-gate/proto/root_i386/usr/include/iso/limits_iso.h" #pragma ident "%Z%%M% %I% %E% SMI" # 39 "/code/illumos-gate/proto/root_i386/usr/include/limits.h" 2 # 50 "/code/illumos-gate/proto/root_i386/usr/include/limits.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/int_limits.h" 1 # 51 "/code/illumos-gate/proto/root_i386/usr/include/limits.h" 2 # 113 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" 2 # 150 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket.h" 1 # 46 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/uio.h" 1 # 66 "/code/illumos-gate/proto/root_i386/usr/include/sys/uio.h" typedef struct iovec { caddr_t iov_base; long iov_len; } iovec_t; # 91 "/code/illumos-gate/proto/root_i386/usr/include/sys/uio.h" typedef enum uio_seg { UIO_USERSPACE, UIO_SYSSPACE, UIO_USERISPACE } uio_seg_t; typedef struct uio { iovec_t *uio_iov; int uio_iovcnt; lloff_t _uio_offset; uio_seg_t uio_segflg; uint16_t uio_fmode; uint16_t uio_extflg; lloff_t _uio_limit; ssize_t uio_resid; } uio_t; # 112 "/code/illumos-gate/proto/root_i386/usr/include/sys/uio.h" typedef struct uioa_page_s { int uioa_pfncnt; void **uioa_ppp; caddr_t uioa_base; size_t uioa_len; } uioa_page_t; typedef struct uioa_s { iovec_t *uio_iov; int uio_iovcnt; lloff_t _uio_offset; uio_seg_t uio_segflg; uint16_t uio_fmode; uint16_t uio_extflg; lloff_t _uio_limit; ssize_t uio_resid; uint32_t uioa_state; ssize_t uioa_mbytes; uioa_page_t *uioa_lcur; void **uioa_lppp; void *uioa_hwst[4]; uioa_page_t uioa_locked[16]; } uioa_t; typedef enum xuio_type { UIOTYPE_ASYNCIO, UIOTYPE_ZEROCOPY } xuio_type_t; typedef struct xuio { uio_t xu_uio; enum xuio_type xu_type; union { struct { uint32_t xu_a_state; ssize_t xu_a_mbytes; uioa_page_t *xu_a_lcur; void **xu_a_lppp; void *xu_a_hwst[4]; uioa_page_t xu_a_locked[16]; } xu_aio; struct { int xu_zc_rw; void *xu_zc_priv; } xu_zc; } xu_ext; } xuio_t; # 208 "/code/illumos-gate/proto/root_i386/usr/include/sys/uio.h" typedef enum uio_rw { UIO_READ, UIO_WRITE } uio_rw_t; # 231 "/code/illumos-gate/proto/root_i386/usr/include/sys/uio.h" typedef struct uioasync_s { boolean_t enabled; size_t mincnt; } uioasync_t; # 255 "/code/illumos-gate/proto/root_i386/usr/include/sys/uio.h" extern ssize_t readv(int, const struct iovec *, int); extern ssize_t writev(int, const struct iovec *, int); # 283 "/code/illumos-gate/proto/root_i386/usr/include/sys/uio.h" extern ssize_t preadv(int, const struct iovec *, int, off_t); extern ssize_t pwritev(int, const struct iovec *, int, off_t); # 293 "/code/illumos-gate/proto/root_i386/usr/include/sys/uio.h" extern ssize_t preadv64(int, const struct iovec *, int, off64_t); extern ssize_t pwritev64(int, const struct iovec *, int, off64_t); # 47 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket_impl.h" 1 # 43 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket_impl.h" typedef uint16_t sa_family_t; struct sockaddr { sa_family_t sa_family; char sa_data[14]; }; # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/un.h" 1 # 53 "/code/illumos-gate/proto/root_i386/usr/include/sys/un.h" struct sockaddr_un { sa_family_t sun_family; char sun_path[108]; }; # 76 "/code/illumos-gate/proto/root_i386/usr/include/sys/un.h" extern size_t strlen(const char *); # 57 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket_impl.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/net/if_dl.h" 1 # 41 "/code/illumos-gate/proto/root_i386/usr/include/net/if_dl.h" #pragma ident "%Z%%M% %I% %E% SMI" # 69 "/code/illumos-gate/proto/root_i386/usr/include/net/if_dl.h" struct sockaddr_dl { ushort_t sdl_family; ushort_t sdl_index; uchar_t sdl_type; uchar_t sdl_nlen; uchar_t sdl_alen; uchar_t sdl_slen; char sdl_data[244]; }; extern char *_link_ntoa(const unsigned char *, char *, int, int); extern unsigned char *_link_aton(const char *, int *); # 58 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket_impl.h" 2 # 85 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket_impl.h" typedef double sockaddr_maxalign_t; # 96 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket_impl.h" struct sockaddr_storage { sa_family_t ss_family; char _ss_pad1[((sizeof (sockaddr_maxalign_t)) - sizeof (sa_family_t))]; sockaddr_maxalign_t _ss_align; char _ss_pad2[(256 - (sizeof (sa_family_t)+ ((sizeof (sockaddr_maxalign_t)) - sizeof (sa_family_t)) + (sizeof (sockaddr_maxalign_t))))]; }; # 111 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket_impl.h" struct sockaddr_ll { uint16_t sll_family; uint16_t sll_protocol; int32_t sll_ifindex; uint16_t sll_hatype; uint8_t sll_pkttype; uint8_t sll_halen; uint8_t sll_addr[8]; }; # 49 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/netconfig.h" 1 # 43 "/code/illumos-gate/proto/root_i386/usr/include/sys/netconfig.h" struct netconfig { char *nc_netid; unsigned int nc_semantics; unsigned int nc_flag; char *nc_protofmly; char *nc_proto; char *nc_device; unsigned int nc_nlookups; char **nc_lookups; unsigned int nc_unused[8]; }; typedef struct { struct netconfig **nc_head; struct netconfig **nc_curr; } NCONF_HANDLE; # 140 "/code/illumos-gate/proto/root_i386/usr/include/sys/netconfig.h" extern void *setnetconfig(void); extern int endnetconfig(void *); extern struct netconfig *getnetconfig(void *); extern struct netconfig *getnetconfigent(const char *); extern void freenetconfigent(struct netconfig *); extern void *setnetpath(void); extern int endnetpath(void *); extern struct netconfig *getnetpath(void *); extern void nc_perror(const char *); extern char *nc_sperror(void); # 52 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" 1 # 55 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" typedef uint32_t socklen_t; typedef void *Psocklen_t; # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" 1 # 40 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/poll.h" 1 # 44 "/code/illumos-gate/proto/root_i386/usr/include/sys/poll.h" typedef struct pollfd { int fd; short events; short revents; } pollfd_t; typedef unsigned long nfds_t; # 141 "/code/illumos-gate/proto/root_i386/usr/include/sys/poll.h" int poll(struct pollfd *, nfds_t, int); # 41 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/strmdep.h" 1 # 34 "/code/illumos-gate/proto/root_i386/usr/include/sys/strmdep.h" #pragma ident "%Z%%M% %I% %E% SMI" # 42 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/cred.h" 1 # 48 "/code/illumos-gate/proto/root_i386/usr/include/sys/cred.h" typedef struct cred cred_t; # 43 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/t_lock.h" 1 # 36 "/code/illumos-gate/proto/root_i386/usr/include/sys/t_lock.h" #pragma ident "%Z%%M% %I% %E% SMI" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/param.h" 1 # 493 "/code/illumos-gate/proto/root_i386/usr/include/sys/param.h" extern long _sysconf(int); # 41 "/code/illumos-gate/proto/root_i386/usr/include/sys/t_lock.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/mutex.h" 1 # 56 "/code/illumos-gate/proto/root_i386/usr/include/sys/mutex.h" typedef enum { MUTEX_ADAPTIVE = 0, MUTEX_SPIN = 1, MUTEX_DRIVER = 4, MUTEX_DEFAULT = 6 } kmutex_type_t; typedef struct mutex { void *_opaque[2]; } kmutex_t; # 42 "/code/illumos-gate/proto/root_i386/usr/include/sys/t_lock.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/rwlock.h" 1 # 45 "/code/illumos-gate/proto/root_i386/usr/include/sys/rwlock.h" typedef enum { RW_DRIVER = 2, RW_DEFAULT = 4 } krw_type_t; typedef enum { RW_WRITER, RW_READER, RW_READER_STARVEWRITER } krw_t; typedef struct _krwlock { void *_opaque[1]; } krwlock_t; # 43 "/code/illumos-gate/proto/root_i386/usr/include/sys/t_lock.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/semaphore.h" 1 # 30 "/code/illumos-gate/proto/root_i386/usr/include/sys/semaphore.h" #pragma ident "%Z%%M% %I% %E% SMI" # 46 "/code/illumos-gate/proto/root_i386/usr/include/sys/semaphore.h" typedef enum { SEMA_DEFAULT, SEMA_DRIVER } ksema_type_t; typedef struct _ksema { void * _opaque[2]; } ksema_t; # 44 "/code/illumos-gate/proto/root_i386/usr/include/sys/t_lock.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/condvar.h" 1 # 59 "/code/illumos-gate/proto/root_i386/usr/include/sys/condvar.h" typedef struct _kcondvar { ushort_t _opaque; } kcondvar_t; typedef enum { CV_DEFAULT, CV_DRIVER } kcv_type_t; # 45 "/code/illumos-gate/proto/root_i386/usr/include/sys/t_lock.h" 2 # 44 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/model.h" 1 # 30 "/code/illumos-gate/proto/root_i386/usr/include/sys/model.h" #pragma ident "%Z%%M% %I% %E% SMI" # 75 "/code/illumos-gate/proto/root_i386/usr/include/sys/model.h" typedef unsigned int model_t; # 45 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" 2 # 111 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" typedef struct queue { struct qinit *q_qinfo; struct msgb *q_first; struct msgb *q_last; struct queue *q_next; struct queue *q_link; void *q_ptr; size_t q_count; uint_t q_flag; ssize_t q_minpsz; ssize_t q_maxpsz; size_t q_hiwat; size_t q_lowat; struct qband *q_bandp; kmutex_t q_lock; struct stdata *q_stream; struct syncq *q_syncq; unsigned char q_nband; kcondvar_t q_wait; struct queue *q_nfsrv; ushort_t q_draining; short q_struiot; clock_t q_qtstamp; size_t q_mblkcnt; uint_t q_syncqmsgs; size_t q_rwcnt; pri_t q_spri; struct msgb *q_sqhead; struct msgb *q_sqtail; struct queue *q_sqnext; struct queue *q_sqprev; uint_t q_sqflags; clock_t q_sqtstamp; struct fmodsw_impl *q_fp; } queue_t; # 203 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" typedef struct qband { struct qband *qb_next; size_t qb_count; struct msgb *qb_first; struct msgb *qb_last; size_t qb_hiwat; size_t qb_lowat; uint_t qb_flag; size_t qb_mblkcnt; } qband_t; # 229 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" typedef enum qfields { QHIWAT = 0, QLOWAT = 1, QMAXPSZ = 2, QMINPSZ = 3, QCOUNT = 4, QFIRST = 5, QLAST = 6, QFLAG = 7, QSTRUIOT = 8, QBAD = 9 } qfields_t; struct module_info { ushort_t mi_idnum; char *mi_idname; ssize_t mi_minpsz; ssize_t mi_maxpsz; size_t mi_hiwat; size_t mi_lowat; }; struct qinit { int (*qi_putp)(); int (*qi_srvp)(); int (*qi_qopen)(); int (*qi_qclose)(); int (*qi_qadmin)(); struct module_info *qi_minfo; struct module_stat *qi_mstat; int (*qi_rwp)(); int (*qi_infop)(); int qi_struiot; }; # 280 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" struct streamtab { struct qinit *st_rdinit; struct qinit *st_wrinit; struct qinit *st_muxrinit; struct qinit *st_muxwinit; }; struct linkblk { queue_t *l_qtop; queue_t *l_qbot; int l_index; }; typedef struct free_rtn { void (*free_func)(); caddr_t free_arg; } frtn_t; # 314 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" typedef struct datab { frtn_t *db_frtnp; unsigned char *db_base; unsigned char *db_lim; unsigned char db_ref; unsigned char db_type; unsigned char db_flags; unsigned char db_struioflag; pid_t db_cpid; void *db_cache; struct msgb *db_mblk; void (*db_free)(struct msgb *, struct datab *); void (*db_lastfree)(struct msgb *, struct datab *); intptr_t db_cksumstart; intptr_t db_cksumend; intptr_t db_cksumstuff; union { double enforce_alignment; unsigned char data[8]; struct { union { uint32_t u32; uint16_t u16; } cksum_val; uint16_t flags; uint16_t pad; } cksum; } db_struioun; struct fthdr *db_fthdr; cred_t *db_credp; } dblk_t; # 366 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" typedef struct msgb { struct msgb *b_next; struct msgb *b_prev; struct msgb *b_cont; unsigned char *b_rptr; unsigned char *b_wptr; struct datab *b_datap; unsigned char b_band; unsigned char b_tag; unsigned short b_flag; queue_t *b_queue; } mblk_t; typedef struct bcache { kmutex_t mutex; struct kmem_cache *buffer_cache; struct kmem_cache *dblk_cache; int alloc; int destroy; size_t size; uint_t align; } bcache_t; # 487 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" struct iocblk { int ioc_cmd; cred_t *ioc_cr; uint_t ioc_id; size_t ioc_count; int ioc_error; int ioc_rval; int ioc_fill1; uint_t ioc_flag; int ioc_filler[2]; }; typedef struct iocblk *IOCP; # 530 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" struct copyreq { int cq_cmd; cred_t *cq_cr; uint_t cq_id; caddr_t cq_addr; size_t cq_size; uint_t cq_flag; mblk_t *cq_private; int cq_filler[4]; }; # 556 "/code/illumos-gate/proto/root_i386/usr/include/sys/stream.h" struct copyresp { int cp_cmd; cred_t *cp_cr; uint_t cp_id; caddr_t cp_rval; size_t cp_pad1; uint_t cp_pad2; mblk_t *cp_private; uint_t cp_flag; int cp_filler[3]; }; union ioctypes { struct iocblk iocblk; struct copyreq copyreq; struct copyresp copyresp; }; struct stroptions { uint_t so_flags; short so_readopt; ushort_t so_wroff; ssize_t so_minpsz; ssize_t so_maxpsz; size_t so_hiwat; size_t so_lowat; unsigned char so_band; ushort_t so_erropt; ssize_t so_maxblk; ushort_t so_copyopt; ushort_t so_tail; }; # 68 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/byteorder.h" 1 # 74 "/code/illumos-gate/proto/root_i386/usr/include/sys/byteorder.h" typedef uint16_t in_port_t; typedef uint32_t in_addr_t; extern uint32_t htonl(uint32_t); extern uint16_t htons(uint16_t); extern uint32_t ntohl(uint32_t); extern uint16_t ntohs(uint16_t); # 96 "/code/illumos-gate/proto/root_i386/usr/include/sys/byteorder.h" extern uint64_t htonll(uint64_t); extern uint64_t ntohll(uint64_t); # 75 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" 2 # 100 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" typedef uint32_t ipaddr_t; struct in6_addr { union { # 122 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" uint8_t _S6_u8[16]; uint32_t _S6_u32[4]; uint32_t __S6_align; } _S6_un; }; typedef struct in6_addr in6_addr_t; # 293 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" struct in_addr { union { struct { uint8_t s_b1, s_b2, s_b3, s_b4; } S_un_b; struct { uint16_t s_w1, s_w2; } S_un_w; uint32_t S_addr; } S_un; }; # 401 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" struct sockaddr_in { sa_family_t sin_family; in_port_t sin_port; struct in_addr sin_addr; char sin_zero[8]; }; struct sockaddr_in6 { sa_family_t sin6_family; in_port_t sin6_port; uint32_t sin6_flowinfo; struct in6_addr sin6_addr; uint32_t sin6_scope_id; uint32_t __sin6_src_id; }; # 941 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" typedef struct ipsec_req { uint_t ipsr_ah_req; uint_t ipsr_esp_req; uint_t ipsr_self_encap_req; uint8_t ipsr_auth_alg; uint8_t ipsr_esp_alg; uint8_t ipsr_esp_auth_alg; } ipsec_req_t; # 1006 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" struct ip_mreq { struct in_addr imr_multiaddr; struct in_addr imr_interface; }; struct ip_mreq_source { struct in_addr imr_multiaddr; struct in_addr imr_sourceaddr; struct in_addr imr_interface; }; struct ipv6_mreq { struct in6_addr ipv6mr_multiaddr; unsigned int ipv6mr_interface; }; # 1044 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" struct group_req { uint32_t gr_interface; struct sockaddr_storage gr_group; }; struct group_source_req { uint32_t gsr_interface; struct sockaddr_storage gsr_group; struct sockaddr_storage gsr_source; }; struct group_filter { uint32_t gf_interface; struct sockaddr_storage gf_group; uint32_t gf_fmode; uint32_t gf_numsrc; struct sockaddr_storage gf_slist[1]; }; # 1081 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" struct ip_msfilter { struct in_addr imsf_multiaddr; struct in_addr imsf_interface; uint32_t imsf_fmode; uint32_t imsf_numsrc; struct in_addr imsf_slist[1]; }; # 1097 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" int setsourcefilter(int, uint32_t, struct sockaddr *, socklen_t, uint32_t, uint_t, struct sockaddr_storage *); int getsourcefilter(int, uint32_t, struct sockaddr *, socklen_t, uint32_t *, uint_t *, struct sockaddr_storage *); int setipv4sourcefilter(int, struct in_addr, struct in_addr, uint32_t, uint32_t, struct in_addr *); int getipv4sourcefilter(int, struct in_addr, struct in_addr, uint32_t *, uint32_t *, struct in_addr *); # 1118 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" typedef struct in_pktinfo { unsigned int ipi_ifindex; struct in_addr ipi_spec_dst; struct in_addr ipi_addr; } in_pktinfo_t; struct in6_pktinfo { struct in6_addr ipi6_addr; unsigned int ipi6_ifindex; }; struct ip6_mtuinfo { struct sockaddr_in6 ip6m_addr; uint32_t ip6m_mtu; }; extern socklen_t inet6_rth_space(int type, int segments); extern void *inet6_rth_init(void *bp, socklen_t bp_len, int type, int segments); extern int inet6_rth_add(void *bp, const struct in6_addr *addr); extern int inet6_rth_reverse(const void *in, void *out); extern int inet6_rth_segments(const void *bp); extern struct in6_addr *inet6_rth_getaddr(const void *bp, int index); extern int inet6_opt_init(void *extbuf, socklen_t extlen); extern int inet6_opt_append(void *extbuf, socklen_t extlen, int offset, uint8_t type, socklen_t len, uint_t align, void **databufp); extern int inet6_opt_finish(void *extbuf, socklen_t extlen, int offset); extern int inet6_opt_set_val(void *databuf, int offset, void *val, socklen_t vallen); extern int inet6_opt_next(void *extbuf, socklen_t extlen, int offset, uint8_t *typep, socklen_t *lenp, void **databufp); extern int inet6_opt_find(void *extbufp, socklen_t extlen, int offset, uint8_t type, socklen_t *lenp, void **databufp); extern int inet6_opt_get_val(void *databuf, int offset, void *val, socklen_t vallen); typedef struct { struct in_addr in_prefix_addr; unsigned int in_prefix_len; } in_prefix_t; # 1315 "/code/illumos-gate/proto/root_i386/usr/include/netinet/in.h" extern const struct in6_addr in6addr_any; extern const struct in6_addr in6addr_loopback; # 54 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket.h" 2 # 210 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket.h" struct fil_info { int fi_flags; int fi_pos; char fi_name[32]; }; # 239 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket.h" struct linger { int l_onoff; int l_linger; }; # 348 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket.h" struct msghdr { void *msg_name; socklen_t msg_namelen; struct iovec *msg_iov; int msg_iovlen; caddr_t msg_accrights; int msg_accrightslen; }; # 442 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket.h" struct cmsghdr { socklen_t cmsg_len; int cmsg_level; int cmsg_type; }; # 527 "/code/illumos-gate/proto/root_i386/usr/include/sys/socket.h" extern int accept(int, struct sockaddr *, Psocklen_t); extern int accept4(int, struct sockaddr *, Psocklen_t, int); extern int bind(int, const struct sockaddr *, socklen_t); extern int connect(int, const struct sockaddr *, socklen_t); extern int getpeername(int, struct sockaddr *, Psocklen_t); extern int getsockname(int, struct sockaddr *, Psocklen_t); extern int getsockopt(int, int, int, void *, Psocklen_t); extern int listen(int, int); extern int socketpair(int, int, int, int *); extern ssize_t recv(int, void *, size_t, int); extern ssize_t recvfrom(int, void *, size_t, int, struct sockaddr *, Psocklen_t); extern ssize_t recvmsg(int, struct msghdr *, int); extern ssize_t send(int, const void *, size_t, int); extern ssize_t sendmsg(int, const struct msghdr *, int); extern ssize_t sendto(int, const void *, size_t, int, const struct sockaddr *, socklen_t); extern int setsockopt(int, int, int, const void *, socklen_t); extern int shutdown(int, int); extern int socket(int, int, int); extern int sockatmark(int); # 151 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" 2 # 174 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" struct _profile_t; # 192 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" typedef unsigned char krb5_octet; typedef short krb5_int16; typedef unsigned short krb5_ui_2; typedef int krb5_int32; typedef unsigned int krb5_ui_4; # 249 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" typedef unsigned int krb5_boolean; typedef unsigned int krb5_msgtype; typedef unsigned int krb5_kvno; typedef krb5_int32 krb5_addrtype; typedef krb5_int32 krb5_enctype; typedef krb5_int32 krb5_cksumtype; typedef krb5_int32 krb5_authdatatype; typedef krb5_int32 krb5_keyusage; typedef krb5_int32 krb5_preauthtype; typedef krb5_int32 krb5_flags; typedef krb5_int32 krb5_timestamp; typedef krb5_int32 krb5_error_code; typedef krb5_int32 krb5_deltat; typedef krb5_error_code krb5_magic; typedef struct _krb5_data { krb5_magic magic; unsigned int length; char *data; } krb5_data; typedef struct _krb5_octet_data { krb5_magic magic; unsigned int length; krb5_octet *data; } krb5_octet_data; # 288 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" typedef void * krb5_pointer; typedef void const * krb5_const_pointer; typedef struct krb5_principal_data { krb5_magic magic; krb5_data realm; krb5_data *data; krb5_int32 length; krb5_int32 type; } krb5_principal_data; typedef krb5_principal_data * krb5_principal; # 331 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" typedef const krb5_principal_data *krb5_const_principal; # 353 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" krb5_boolean krb5_is_referral_realm(const krb5_data *); # 364 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" typedef struct _krb5_address { krb5_magic magic; krb5_addrtype addrtype; unsigned int length; krb5_octet *contents; } krb5_address; # 390 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" struct _krb5_context; typedef struct _krb5_context * krb5_context; struct _krb5_auth_context; typedef struct _krb5_auth_context * krb5_auth_context; struct _krb5_cryptosystem_entry; struct _krb5_keyblock; typedef struct _dk_node { krb5_keyusage usage; struct _krb5_keyblock *derived_key; uchar_t dkid; struct _dk_node *next; } krb5_dk_node; typedef struct _krb5_keyblock { krb5_magic magic; krb5_enctype enctype; unsigned int length; krb5_octet *contents; krb5_dk_node *dk_list; CK_OBJECT_HANDLE hKey; pid_t pid; } krb5_keyblock; typedef struct _krb5_checksum { krb5_magic magic; krb5_cksumtype checksum_type; unsigned int length; krb5_octet *contents; } krb5_checksum; typedef struct _krb5_encrypt_block { krb5_magic magic; krb5_enctype crypto_entry; krb5_keyblock *key; } krb5_encrypt_block; typedef struct _krb5_enc_data { krb5_magic magic; krb5_enctype enctype; krb5_kvno kvno; krb5_data ciphertext; } krb5_enc_data; # 493 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" enum { KRB5_C_RANDSOURCE_OLDAPI = 0, KRB5_C_RANDSOURCE_OSRAND = 1, KRB5_C_RANDSOURCE_TRUSTEDPARTY = 2, KRB5_C_RANDSOURCE_TIMING = 3, KRB5_C_RANDSOURCE_EXTERNAL_PROTOCOL = 4, KRB5_C_RANDSOURCE_MAX = 5 }; # 521 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" krb5_error_code krb5_c_encrypt (krb5_context context, const krb5_keyblock *key, krb5_keyusage usage, const krb5_data *cipher_state, const krb5_data *input, krb5_enc_data *output); krb5_error_code krb5_c_decrypt (krb5_context context, const krb5_keyblock *key, krb5_keyusage usage, const krb5_data *cipher_state, const krb5_enc_data *input, krb5_data *output); krb5_error_code krb5_c_encrypt_length (krb5_context context, krb5_enctype enctype, size_t inputlen, size_t *length); krb5_error_code krb5_c_block_size (krb5_context context, krb5_enctype enctype, size_t *blocksize); krb5_error_code krb5_c_keylengths (krb5_context context, krb5_enctype enctype, size_t *keybytes, size_t *keylength); krb5_error_code krb5_c_init_state(krb5_context, const krb5_keyblock *, krb5_keyusage, krb5_data *); krb5_error_code krb5_c_free_state(krb5_context, const krb5_keyblock *, krb5_data *); krb5_error_code krb5_c_make_random_key (krb5_context context, krb5_enctype enctype, krb5_keyblock *random_key); krb5_error_code krb5_c_random_to_key (krb5_context context, krb5_enctype enctype, krb5_data *random_data, krb5_keyblock *k5_random_key); krb5_error_code krb5_c_random_add_entropy (krb5_context context, unsigned int randsource_id, const krb5_data *data); krb5_error_code krb5_c_random_make_octets (krb5_context context, krb5_data *data); # 594 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" krb5_error_code krb5_c_random_seed (krb5_context context, krb5_data *data); krb5_error_code krb5_c_string_to_key (krb5_context context, krb5_enctype enctype, const krb5_data *string, const krb5_data *salt, krb5_keyblock *key); krb5_error_code krb5_c_string_to_key_with_params(krb5_context context, krb5_enctype enctype, const krb5_data *string, const krb5_data *salt, const krb5_data *params, krb5_keyblock *key); krb5_error_code krb5_c_enctype_compare (krb5_context context, krb5_enctype e1, krb5_enctype e2, krb5_boolean *similar); krb5_error_code krb5_c_make_checksum (krb5_context context, krb5_cksumtype cksumtype, const krb5_keyblock *key, krb5_keyusage usage, const krb5_data *input, krb5_checksum *cksum); krb5_error_code krb5_c_verify_checksum (krb5_context context, const krb5_keyblock *key, krb5_keyusage usage, const krb5_data *data, const krb5_checksum *cksum, krb5_boolean *valid); krb5_error_code krb5_c_checksum_length (krb5_context context, krb5_cksumtype cksumtype, size_t *length); krb5_error_code krb5_c_keyed_checksum_types (krb5_context context, krb5_enctype enctype, unsigned int *count, krb5_cksumtype **cksumtypes); # 677 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" krb5_boolean krb5_c_valid_enctype (krb5_enctype ktype); krb5_boolean krb5_c_valid_cksumtype (krb5_cksumtype ctype); krb5_boolean krb5_c_is_coll_proof_cksum (krb5_cksumtype ctype); krb5_boolean krb5_c_is_keyed_cksum (krb5_cksumtype ctype); krb5_boolean valid_enctype (krb5_enctype ktype); krb5_boolean valid_cksumtype (krb5_cksumtype ctype); krb5_boolean is_coll_proof_cksum (krb5_cksumtype ctype); krb5_boolean is_keyed_cksum (krb5_cksumtype ctype); krb5_error_code krb5_encrypt (krb5_context context, krb5_const_pointer inptr, krb5_pointer outptr, size_t size, krb5_encrypt_block * eblock, krb5_pointer ivec); krb5_error_code krb5_decrypt (krb5_context context, krb5_const_pointer inptr, krb5_pointer outptr, size_t size, krb5_encrypt_block * eblock, krb5_pointer ivec); krb5_error_code krb5_process_key (krb5_context context, krb5_encrypt_block * eblock, const krb5_keyblock * key); krb5_error_code krb5_finish_key (krb5_context context, krb5_encrypt_block * eblock); krb5_error_code krb5_string_to_key (krb5_context context, const krb5_encrypt_block * eblock, krb5_keyblock * keyblock, const krb5_data * data, const krb5_data * salt); krb5_error_code krb5_init_random_key (krb5_context context, const krb5_encrypt_block * eblock, const krb5_keyblock * keyblock, krb5_pointer * ptr); krb5_error_code krb5_finish_random_key (krb5_context context, const krb5_encrypt_block * eblock, krb5_pointer * ptr); krb5_error_code krb5_random_key (krb5_context context, const krb5_encrypt_block * eblock, krb5_pointer ptr, krb5_keyblock ** keyblock); krb5_enctype krb5_eblock_enctype (krb5_context context, const krb5_encrypt_block * eblock); krb5_error_code krb5_use_enctype (krb5_context context, krb5_encrypt_block * eblock, krb5_enctype enctype); size_t krb5_encrypt_size (size_t length, krb5_enctype crypto); size_t krb5_checksum_size (krb5_context context, krb5_cksumtype ctype); krb5_error_code krb5_calculate_checksum (krb5_context context, krb5_cksumtype ctype, krb5_const_pointer in, size_t in_length, krb5_const_pointer seed, size_t seed_length, krb5_checksum * outcksum); krb5_error_code krb5_verify_checksum (krb5_context context, krb5_cksumtype ctype, const krb5_checksum * cksum, krb5_const_pointer in, size_t in_length, krb5_const_pointer seed, size_t seed_length); krb5_error_code krb5_random_confounder (size_t, krb5_pointer); krb5_error_code krb5_encrypt_data (krb5_context context, krb5_keyblock *key, krb5_pointer ivec, krb5_data *data, krb5_enc_data *enc_data); krb5_error_code krb5_decrypt_data (krb5_context context, krb5_keyblock *key, krb5_pointer ivec, krb5_enc_data *data, krb5_data *enc_data); # 1046 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" typedef struct _krb5_ticket_times { krb5_timestamp authtime; krb5_timestamp starttime; krb5_timestamp endtime; krb5_timestamp renew_till; } krb5_ticket_times; typedef struct _krb5_authdata { krb5_magic magic; krb5_authdatatype ad_type; unsigned int length; krb5_octet *contents; } krb5_authdata; typedef struct _krb5_transited { krb5_magic magic; krb5_octet tr_type; krb5_data tr_contents; } krb5_transited; typedef struct _krb5_enc_tkt_part { krb5_magic magic; krb5_flags flags; krb5_keyblock *session; krb5_principal client; krb5_transited transited; krb5_ticket_times times; krb5_address **caddrs; krb5_authdata **authorization_data; } krb5_enc_tkt_part; typedef struct _krb5_ticket { krb5_magic magic; krb5_principal server; krb5_enc_data enc_part; krb5_enc_tkt_part *enc_part2; } krb5_ticket; typedef struct _krb5_authenticator { krb5_magic magic; krb5_principal client; krb5_checksum *checksum; krb5_int32 cusec; krb5_timestamp ctime; krb5_keyblock *subkey; krb5_ui_4 seq_number; krb5_authdata **authorization_data; } krb5_authenticator; typedef struct _krb5_tkt_authent { krb5_magic magic; krb5_ticket *ticket; krb5_authenticator *authenticator; krb5_flags ap_options; } krb5_tkt_authent; typedef struct _krb5_creds { krb5_magic magic; krb5_principal client; krb5_principal server; krb5_keyblock keyblock; krb5_ticket_times times; krb5_boolean is_skey; krb5_flags ticket_flags; krb5_address * *addresses; krb5_data ticket; krb5_data second_ticket; krb5_authdata **authdata; } krb5_creds; typedef struct _krb5_last_req_entry { krb5_magic magic; krb5_int32 lr_type; krb5_timestamp value; } krb5_last_req_entry; typedef struct _krb5_pa_data { krb5_magic magic; krb5_preauthtype pa_type; unsigned int length; krb5_octet *contents; } krb5_pa_data; typedef struct _krb5_kdc_req { krb5_magic magic; krb5_msgtype msg_type; krb5_pa_data **padata; krb5_flags kdc_options; krb5_principal client; krb5_principal server; krb5_timestamp from; krb5_timestamp till; krb5_timestamp rtime; krb5_int32 nonce; int nktypes; krb5_enctype *ktype; krb5_address **addresses; krb5_enc_data authorization_data; krb5_authdata **unenc_authdata; krb5_ticket **second_ticket; } krb5_kdc_req; typedef struct _krb5_enc_kdc_rep_part { krb5_magic magic; krb5_msgtype msg_type; krb5_keyblock *session; krb5_last_req_entry **last_req; krb5_int32 nonce; krb5_timestamp key_exp; krb5_flags flags; krb5_ticket_times times; krb5_principal server; krb5_address **caddrs; krb5_pa_data **enc_padata; } krb5_enc_kdc_rep_part; typedef struct _krb5_kdc_rep { krb5_magic magic; krb5_msgtype msg_type; krb5_pa_data **padata; krb5_principal client; krb5_ticket *ticket; krb5_enc_data enc_part; krb5_enc_kdc_rep_part *enc_part2; } krb5_kdc_rep; typedef struct _krb5_error { krb5_magic magic; krb5_timestamp ctime; krb5_int32 cusec; krb5_int32 susec; krb5_timestamp stime; krb5_ui_4 error; krb5_principal client; krb5_principal server; krb5_data text; krb5_data e_data; } krb5_error; typedef struct _krb5_ap_req { krb5_magic magic; krb5_flags ap_options; krb5_ticket *ticket; krb5_enc_data authenticator; } krb5_ap_req; typedef struct _krb5_ap_rep { krb5_magic magic; krb5_enc_data enc_part; } krb5_ap_rep; typedef struct _krb5_ap_rep_enc_part { krb5_magic magic; krb5_timestamp ctime; krb5_int32 cusec; krb5_keyblock *subkey; krb5_ui_4 seq_number; } krb5_ap_rep_enc_part; typedef struct _krb5_response { krb5_magic magic; krb5_octet message_type; krb5_data response; krb5_int32 expected_nonce; krb5_timestamp request_time; } krb5_response; typedef struct _krb5_cred_info { krb5_magic magic; krb5_keyblock *session; krb5_principal client; krb5_principal server; krb5_flags flags; krb5_ticket_times times; krb5_address **caddrs; } krb5_cred_info; typedef struct _krb5_cred_enc_part { krb5_magic magic; krb5_int32 nonce; krb5_timestamp timestamp; krb5_int32 usec; krb5_address *s_address; krb5_address *r_address; krb5_cred_info **ticket_info; } krb5_cred_enc_part; typedef struct _krb5_cred { krb5_magic magic; krb5_ticket **tickets; krb5_enc_data enc_part; krb5_cred_enc_part *enc_part2; } krb5_cred; typedef struct _passwd_phrase_element { krb5_magic magic; krb5_data *passwd; krb5_data *phrase; } passwd_phrase_element; typedef struct _krb5_pwd_data { krb5_magic magic; int sequence_count; passwd_phrase_element **element; } krb5_pwd_data; typedef struct _krb5_pa_svr_referral_data { krb5_principal principal; } krb5_pa_svr_referral_data; typedef struct _krb5_pa_server_referral_data { krb5_data *referred_realm; krb5_principal true_principal_name; krb5_principal requested_principal_name; krb5_timestamp referral_valid_until; krb5_checksum rep_cksum; } krb5_pa_server_referral_data; typedef struct _krb5_pa_pac_req { krb5_boolean include_pac; } krb5_pa_pac_req; # 1311 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" typedef struct krb5_replay_data { krb5_timestamp timestamp; krb5_int32 usec; krb5_int32 seq; } krb5_replay_data; # 1326 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" typedef krb5_error_code ( * krb5_mk_req_checksum_func) (krb5_context, krb5_auth_context , void *, krb5_data **); # 1339 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" typedef krb5_pointer krb5_cc_cursor; struct _krb5_ccache; typedef struct _krb5_ccache *krb5_ccache; struct _krb5_cc_ops; typedef struct _krb5_cc_ops krb5_cc_ops; # 1363 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" krb5_error_code krb5_cc_gen_new (krb5_context context, krb5_ccache *cache); krb5_error_code krb5_cc_initialize(krb5_context context, krb5_ccache cache, krb5_principal principal); krb5_error_code krb5_cc_destroy (krb5_context context, krb5_ccache cache); krb5_error_code krb5_cc_close (krb5_context context, krb5_ccache cache); krb5_error_code krb5_cc_store_cred (krb5_context context, krb5_ccache cache, krb5_creds *creds); krb5_error_code krb5_cc_retrieve_cred (krb5_context context, krb5_ccache cache, krb5_flags flags, krb5_creds *mcreds, krb5_creds *creds); krb5_error_code krb5_cc_get_principal (krb5_context context, krb5_ccache cache, krb5_principal *principal); krb5_error_code krb5_cc_start_seq_get (krb5_context context, krb5_ccache cache, krb5_cc_cursor *cursor); krb5_error_code krb5_cc_next_cred (krb5_context context, krb5_ccache cache, krb5_cc_cursor *cursor, krb5_creds *creds); krb5_error_code krb5_cc_end_seq_get (krb5_context context, krb5_ccache cache, krb5_cc_cursor *cursor); krb5_error_code krb5_cc_remove_cred (krb5_context context, krb5_ccache cache, krb5_flags flags, krb5_creds *creds); krb5_error_code krb5_cc_set_flags (krb5_context context, krb5_ccache cache, krb5_flags flags); krb5_error_code krb5_cc_get_flags (krb5_context context, krb5_ccache cache, krb5_flags *flags); const char * krb5_cc_get_type (krb5_context context, krb5_ccache cache); const char * krb5_cc_get_name (krb5_context context, krb5_ccache cache); krb5_error_code krb5_cc_new_unique( krb5_context context, const char *type, const char *hint, krb5_ccache *id); # 1433 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" struct krb5_rc_st; typedef struct krb5_rc_st *krb5_rcache; # 1448 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" typedef krb5_pointer krb5_kt_cursor; typedef struct krb5_keytab_entry_st { krb5_magic magic; krb5_principal principal; krb5_timestamp timestamp; krb5_kvno vno; krb5_keyblock key; } krb5_keytab_entry; struct _krb5_kt_ops; typedef struct _krb5_kt { krb5_magic magic; const struct _krb5_kt_ops *ops; krb5_pointer data; } *krb5_keytab; char * krb5_kt_get_type (krb5_context, krb5_keytab keytab); krb5_error_code krb5_kt_get_name(krb5_context context, krb5_keytab keytab, char *name, unsigned int namelen); krb5_error_code krb5_kt_close(krb5_context context, krb5_keytab keytab); krb5_error_code krb5_kt_get_entry(krb5_context context, krb5_keytab keytab, krb5_const_principal principal, krb5_kvno vno, krb5_enctype enctype, krb5_keytab_entry *entry); krb5_error_code krb5_kt_start_seq_get(krb5_context context, krb5_keytab keytab, krb5_kt_cursor *cursor); krb5_error_code krb5_kt_next_entry(krb5_context context, krb5_keytab keytab, krb5_keytab_entry *entry, krb5_kt_cursor *cursor); krb5_error_code krb5_kt_end_seq_get(krb5_context context, krb5_keytab keytab, krb5_kt_cursor *cursor); krb5_error_code krb5_kt_find_realm(krb5_context context, krb5_keytab keytab, krb5_principal princ, krb5_data *realm); # 1504 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" krb5_error_code krb5_init_ef_handle(krb5_context); krb5_error_code krb5_free_ef_handle(krb5_context); krb5_boolean krb5_privacy_allowed(void); krb5_error_code krb5_copy_keyblock_data (krb5_context, const krb5_keyblock *, krb5_keyblock *); krb5_error_code krb5_init_context (krb5_context *); krb5_error_code krb5_init_secure_context (krb5_context *); void krb5_free_context (krb5_context); krb5_error_code krb5_set_default_in_tkt_ktypes (krb5_context, const krb5_enctype *); krb5_error_code krb5_get_default_in_tkt_ktypes (krb5_context, krb5_enctype **); krb5_error_code krb5_set_default_tgs_ktypes (krb5_context, const krb5_enctype *); krb5_error_code krb5_set_default_tgs_enctypes (krb5_context, const krb5_enctype *); krb5_error_code krb5_get_tgs_ktypes (krb5_context, krb5_const_principal, krb5_enctype **); krb5_error_code krb5_get_permitted_enctypes (krb5_context, krb5_enctype **); void krb5_free_ktypes (krb5_context, krb5_enctype *); krb5_boolean krb5_is_permitted_enctype (krb5_context, krb5_enctype); krb5_boolean krb5_is_thread_safe(void); krb5_error_code krb5_kdc_rep_decrypt_proc (krb5_context, const krb5_keyblock *, krb5_const_pointer, krb5_kdc_rep * ); krb5_error_code krb5_decrypt_tkt_part (krb5_context, const krb5_keyblock *, krb5_ticket * ); krb5_error_code krb5_get_cred_from_kdc (krb5_context, krb5_ccache, krb5_creds *, krb5_creds **, krb5_creds *** ); krb5_error_code krb5_get_cred_from_kdc_validate (krb5_context, krb5_ccache, krb5_creds *, krb5_creds **, krb5_creds *** ); krb5_error_code krb5_get_cred_from_kdc_renew (krb5_context, krb5_ccache, krb5_creds *, krb5_creds **, krb5_creds *** ); void krb5_free_tgt_creds (krb5_context, krb5_creds **); krb5_error_code krb5_get_credentials (krb5_context, krb5_flags, krb5_ccache, krb5_creds *, krb5_creds **); krb5_error_code krb5_get_credentials_validate (krb5_context, krb5_flags, krb5_ccache, krb5_creds *, krb5_creds **); krb5_error_code krb5_get_credentials_renew (krb5_context, krb5_flags, krb5_ccache, krb5_creds *, krb5_creds **); krb5_error_code krb5_get_cred_via_tkt (krb5_context, krb5_creds *, krb5_flags, krb5_address * const *, krb5_creds *, krb5_creds **); krb5_error_code krb5_mk_req (krb5_context, krb5_auth_context *, krb5_flags, char *, char *, krb5_data *, krb5_ccache, krb5_data * ); krb5_error_code krb5_mk_req_extended (krb5_context, krb5_auth_context *, krb5_flags, krb5_data *, krb5_creds *, krb5_data * ); krb5_error_code krb5_mk_rep (krb5_context, krb5_auth_context, krb5_data *); krb5_error_code krb5_rd_rep (krb5_context, krb5_auth_context, const krb5_data *, krb5_ap_rep_enc_part **); krb5_error_code krb5_mk_error (krb5_context, const krb5_error *, krb5_data * ); krb5_error_code krb5_rd_error (krb5_context, const krb5_data *, krb5_error ** ); krb5_error_code krb5_rd_safe (krb5_context, krb5_auth_context, const krb5_data *, krb5_data *, krb5_replay_data *); krb5_error_code krb5_rd_priv (krb5_context, krb5_auth_context, const krb5_data *, krb5_data *, krb5_replay_data *); krb5_error_code krb5_parse_name (krb5_context, const char *, krb5_principal * ); krb5_error_code krb5_parse_name_flags (krb5_context, const char *, int, krb5_principal * ); krb5_error_code krb5_unparse_name (krb5_context, krb5_const_principal, char ** ); krb5_error_code krb5_unparse_name_ext (krb5_context, krb5_const_principal, char **, unsigned int *); krb5_error_code krb5_unparse_name_flags (krb5_context, krb5_const_principal, int, char **); krb5_error_code krb5_unparse_name_flags_ext (krb5_context, krb5_const_principal, int, char **, unsigned int *); krb5_error_code krb5_set_principal_realm (krb5_context, krb5_principal, const char *); krb5_boolean krb5_address_search (krb5_context, const krb5_address *, krb5_address * const *); krb5_boolean krb5_address_compare (krb5_context, const krb5_address *, const krb5_address *); int krb5_address_order (krb5_context, const krb5_address *, const krb5_address *); krb5_boolean krb5_realm_compare (krb5_context, krb5_const_principal, krb5_const_principal); krb5_boolean krb5_principal_compare (krb5_context, krb5_const_principal, krb5_const_principal); krb5_error_code krb5_init_keyblock (krb5_context, krb5_enctype enctype, size_t length, krb5_keyblock **out); # 1755 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" krb5_error_code krb5_init_allocated_keyblock (krb5_context, krb5_enctype, unsigned int, krb5_keyblock *); krb5_enctype krb5_get_key_enctype (krb5_keyblock *); unsigned int krb5_get_key_length (krb5_keyblock *); krb5_octet *krb5_get_key_data (krb5_keyblock *); void krb5_set_key_enctype (krb5_keyblock *, krb5_enctype); void krb5_set_key_data (krb5_keyblock *, krb5_octet *); void krb5_set_key_length (krb5_keyblock *, unsigned int); krb5_error_code krb5_copy_keyblock (krb5_context, const krb5_keyblock *, krb5_keyblock **); krb5_error_code krb5_copy_keyblock_contents (krb5_context, const krb5_keyblock *, krb5_keyblock *); krb5_error_code krb5_copy_creds (krb5_context, const krb5_creds *, krb5_creds **); krb5_error_code krb5_copy_data (krb5_context, const krb5_data *, krb5_data **); krb5_error_code krb5_copy_principal (krb5_context, krb5_const_principal, krb5_principal *); krb5_error_code krb5_copy_addr (krb5_context, const krb5_address *, krb5_address **); krb5_error_code krb5_copy_addresses (krb5_context, krb5_address * const *, krb5_address ***); krb5_error_code krb5_copy_ticket (krb5_context, const krb5_ticket *, krb5_ticket **); krb5_error_code krb5_copy_authdata (krb5_context, krb5_authdata * const *, krb5_authdata ***); krb5_error_code krb5_merge_authdata (krb5_context, krb5_authdata * const *, krb5_authdata *const *, krb5_authdata ***); krb5_error_code krb5_copy_authenticator (krb5_context, const krb5_authenticator *, krb5_authenticator **); krb5_error_code krb5_copy_checksum (krb5_context, const krb5_checksum *, krb5_checksum **); void krb5_init_ets (krb5_context); void krb5_free_ets (krb5_context); krb5_error_code krb5_generate_subkey (krb5_context, const krb5_keyblock *, krb5_keyblock **); krb5_error_code krb5_generate_seq_number (krb5_context, const krb5_keyblock *, krb5_ui_4 *); krb5_error_code krb5_get_server_rcache (krb5_context, const krb5_data *, krb5_rcache *); krb5_error_code krb5_build_principal_ext (krb5_context, krb5_principal *, unsigned int, const char *, ...); krb5_error_code krb5_build_principal (krb5_context, krb5_principal *, unsigned int, const char *, ...); krb5_error_code krb5_build_principal_va (krb5_context, krb5_principal, unsigned int, const char *, va_list); krb5_error_code krb5_425_conv_principal (krb5_context, const char *name, const char *instance, const char *realm, krb5_principal *princ); krb5_error_code krb5_524_conv_principal (krb5_context context, krb5_const_principal princ, char *name, char *inst, char *realm); struct credentials; int krb5_524_convert_creds (krb5_context context, krb5_creds *v5creds, struct credentials *v4creds); krb5_error_code krb5_kt_register (krb5_context, const struct _krb5_kt_ops * ); krb5_error_code krb5_kt_resolve (krb5_context, const char *, krb5_keytab * ); krb5_error_code krb5_kt_default_name (krb5_context, char *, int ); krb5_error_code krb5_kt_default (krb5_context, krb5_keytab * ); krb5_error_code krb5_free_keytab_entry_contents (krb5_context, krb5_keytab_entry * ); krb5_error_code krb5_kt_free_entry (krb5_context, krb5_keytab_entry * ); krb5_error_code krb5_kt_remove_entry (krb5_context, krb5_keytab, krb5_keytab_entry * ); krb5_error_code krb5_kt_add_entry (krb5_context, krb5_keytab, krb5_keytab_entry * ); krb5_error_code krb5_principal2salt (krb5_context, krb5_const_principal, krb5_data *); krb5_error_code krb5_principal2salt_norealm (krb5_context, krb5_const_principal, krb5_data *); krb5_error_code krb5_cc_resolve (krb5_context, const char *, krb5_ccache * ); const char * krb5_cc_default_name (krb5_context); krb5_error_code krb5_cc_set_default_name (krb5_context, const char *); krb5_error_code krb5_cc_default (krb5_context, krb5_ccache *); unsigned int krb5_get_notification_message (void); krb5_error_code krb5_cc_copy_creds (krb5_context context, krb5_ccache incc, krb5_ccache outcc); krb5_error_code krb5_check_transited_list (krb5_context, const krb5_data *trans, const krb5_data *realm1, const krb5_data *realm2); void krb5_free_realm_tree (krb5_context, krb5_principal *); void krb5_free_principal (krb5_context, krb5_principal ); void krb5_free_authenticator (krb5_context, krb5_authenticator * ); void krb5_free_authenticator_contents (krb5_context, krb5_authenticator * ); void krb5_free_addresses (krb5_context, krb5_address ** ); void krb5_free_address (krb5_context, krb5_address * ); void krb5_free_authdata (krb5_context, krb5_authdata ** ); void krb5_free_enc_tkt_part (krb5_context, krb5_enc_tkt_part * ); void krb5_free_ticket (krb5_context, krb5_ticket * ); void krb5_free_tickets (krb5_context, krb5_ticket ** ); void krb5_free_kdc_req (krb5_context, krb5_kdc_req * ); void krb5_free_kdc_rep (krb5_context, krb5_kdc_rep * ); void krb5_free_last_req (krb5_context, krb5_last_req_entry ** ); void krb5_free_enc_kdc_rep_part (krb5_context, krb5_enc_kdc_rep_part * ); void krb5_free_error (krb5_context, krb5_error * ); void krb5_free_ap_req (krb5_context, krb5_ap_req * ); void krb5_free_ap_rep (krb5_context, krb5_ap_rep * ); void krb5_free_cred (krb5_context, krb5_cred *); void krb5_free_creds (krb5_context, krb5_creds *); void krb5_free_cred_contents (krb5_context, krb5_creds *); void krb5_free_cred_enc_part (krb5_context, krb5_cred_enc_part *); void krb5_free_checksum (krb5_context, krb5_checksum *); void krb5_free_checksum_contents (krb5_context, krb5_checksum *); void krb5_free_keyblock (krb5_context, krb5_keyblock *); void krb5_free_keyblock_contents (krb5_context, krb5_keyblock *); void krb5_free_pa_data (krb5_context, krb5_pa_data **); void krb5_free_ap_rep_enc_part (krb5_context, krb5_ap_rep_enc_part *); void krb5_free_tkt_authent (krb5_context, krb5_tkt_authent *); void krb5_free_pwd_data (krb5_context, krb5_pwd_data *); void krb5_free_pwd_sequences (krb5_context, passwd_phrase_element **); void krb5_free_data (krb5_context, krb5_data *); void krb5_free_data_contents (krb5_context, krb5_data *); void krb5_free_unparsed_name (krb5_context, char *); void krb5_free_cksumtypes (krb5_context, krb5_cksumtype *); krb5_error_code krb5_us_timeofday (krb5_context, krb5_int32 *, krb5_int32 * ); krb5_error_code krb5_timeofday (krb5_context, krb5_int32 * ); krb5_error_code krb5_os_localaddr (krb5_context, krb5_address ***); krb5_error_code krb5_get_default_realm (krb5_context, char ** ); krb5_error_code krb5_set_default_realm (krb5_context, const char * ); void krb5_free_default_realm (krb5_context, char * ); krb5_error_code krb5_sname_to_principal (krb5_context, const char *, const char *, krb5_int32, krb5_principal *); krb5_error_code krb5_change_password (krb5_context context, krb5_creds *creds, char *newpw, int *result_code, krb5_data *result_code_string, krb5_data *result_string); krb5_error_code krb5_set_password (krb5_context context, krb5_creds *creds, char *newpw, krb5_principal change_password_for, int *result_code, krb5_data *result_code_string, krb5_data *result_string); krb5_error_code krb5_set_password_using_ccache (krb5_context context, krb5_ccache ccache, char *newpw, krb5_principal change_password_for, int *result_code, krb5_data *result_code_string, krb5_data *result_string); krb5_error_code krb5_set_config_files (krb5_context, const char **); krb5_error_code krb5_get_default_config_files (char ***filenames); void krb5_free_config_files (char **filenames); krb5_error_code krb5_get_profile (krb5_context, struct _profile_t * *); krb5_error_code krb5_send_tgs (krb5_context, krb5_flags, const krb5_ticket_times *, const krb5_enctype *, krb5_const_principal, krb5_address * const *, krb5_authdata * const *, krb5_pa_data * const *, const krb5_data *, krb5_creds *, krb5_response * ); krb5_error_code krb5_send_tgs2 (krb5_context, krb5_flags, const krb5_ticket_times *, const krb5_enctype *, krb5_const_principal, krb5_address * const *, krb5_authdata * const *, krb5_pa_data * const *, const krb5_data *, krb5_creds *, krb5_response * , char **); krb5_error_code krb5_get_in_tkt (krb5_context, krb5_flags, krb5_address * const *, krb5_enctype *, krb5_preauthtype *, krb5_error_code ( * )(krb5_context, krb5_enctype, krb5_data *, krb5_const_pointer, krb5_keyblock **), krb5_const_pointer, krb5_error_code ( * )(krb5_context, const krb5_keyblock *, krb5_const_pointer, krb5_kdc_rep * ), krb5_const_pointer, krb5_creds *, krb5_ccache, krb5_kdc_rep ** ); krb5_error_code krb5_get_in_tkt_with_password (krb5_context, krb5_flags, krb5_address * const *, krb5_enctype *, krb5_preauthtype *, const char *, krb5_ccache, krb5_creds *, krb5_kdc_rep ** ); krb5_error_code krb5_get_in_tkt_with_skey (krb5_context, krb5_flags, krb5_address * const *, krb5_enctype *, krb5_preauthtype *, const krb5_keyblock *, krb5_ccache, krb5_creds *, krb5_kdc_rep ** ); krb5_error_code krb5_get_in_tkt_with_keytab (krb5_context, krb5_flags, krb5_address * const *, krb5_enctype *, krb5_preauthtype *, krb5_keytab, krb5_ccache, krb5_creds *, krb5_kdc_rep ** ); krb5_error_code krb5_decode_kdc_rep (krb5_context, krb5_data *, const krb5_keyblock *, krb5_kdc_rep ** ); krb5_error_code krb5_rd_req (krb5_context, krb5_auth_context *, const krb5_data *, krb5_const_principal, krb5_keytab, krb5_flags *, krb5_ticket **); krb5_error_code krb5_rd_req_decoded (krb5_context, krb5_auth_context *, const krb5_ap_req *, krb5_const_principal, krb5_keytab, krb5_flags *, krb5_ticket **); krb5_error_code krb5_rd_req_decoded_anyflag (krb5_context, krb5_auth_context *, const krb5_ap_req *, krb5_const_principal, krb5_keytab, krb5_flags *, krb5_ticket **); krb5_error_code krb5_kt_read_service_key (krb5_context, krb5_pointer, krb5_principal, krb5_kvno, krb5_enctype, krb5_keyblock **); krb5_error_code krb5_mk_safe (krb5_context, krb5_auth_context, const krb5_data *, krb5_data *, krb5_replay_data *); krb5_error_code krb5_mk_priv (krb5_context, krb5_auth_context, const krb5_data *, krb5_data *, krb5_replay_data *); krb5_error_code krb5_cc_register (krb5_context, krb5_cc_ops *, krb5_boolean ); krb5_error_code krb5_sendauth (krb5_context, krb5_auth_context *, krb5_pointer, char *, krb5_principal, krb5_principal, krb5_flags, krb5_data *, krb5_creds *, krb5_ccache, krb5_error **, krb5_ap_rep_enc_part **, krb5_creds **); krb5_error_code krb5_recvauth (krb5_context, krb5_auth_context *, krb5_pointer, char *, krb5_principal, krb5_int32, krb5_keytab, krb5_ticket **); krb5_error_code krb5_recvauth_version (krb5_context, krb5_auth_context *, krb5_pointer, krb5_principal, krb5_int32, krb5_keytab, krb5_ticket **, krb5_data *); krb5_error_code krb5_walk_realm_tree (krb5_context, const krb5_data *, const krb5_data *, krb5_principal **, int); krb5_error_code krb5_mk_ncred (krb5_context, krb5_auth_context, krb5_creds **, krb5_data **, krb5_replay_data *); krb5_error_code krb5_mk_1cred (krb5_context, krb5_auth_context, krb5_creds *, krb5_data **, krb5_replay_data *); krb5_error_code krb5_rd_cred (krb5_context, krb5_auth_context, krb5_data *, krb5_creds ***, krb5_replay_data *); krb5_error_code krb5_fwd_tgt_creds (krb5_context, krb5_auth_context, char *, krb5_principal, krb5_principal, krb5_ccache, int forwardable, krb5_data *); krb5_error_code krb5_auth_con_init (krb5_context, krb5_auth_context *); krb5_error_code krb5_auth_con_free (krb5_context, krb5_auth_context); krb5_error_code krb5_auth_con_setflags (krb5_context, krb5_auth_context, krb5_int32); krb5_error_code krb5_auth_con_getflags (krb5_context, krb5_auth_context, krb5_int32 *); krb5_error_code krb5_auth_con_set_checksum_func (krb5_context, krb5_auth_context, krb5_mk_req_checksum_func, void *); krb5_error_code krb5_auth_con_get_checksum_func( krb5_context, krb5_auth_context, krb5_mk_req_checksum_func *, void **); krb5_error_code krb5_auth_con_setaddrs (krb5_context, krb5_auth_context, krb5_address *, krb5_address *); krb5_error_code krb5_auth_con_getaddrs (krb5_context, krb5_auth_context, krb5_address **, krb5_address **); krb5_error_code krb5_auth_con_setports (krb5_context, krb5_auth_context, krb5_address *, krb5_address *); krb5_error_code krb5_auth_con_setuseruserkey (krb5_context, krb5_auth_context, krb5_keyblock *); krb5_error_code krb5_auth_con_getkey (krb5_context, krb5_auth_context, krb5_keyblock **); krb5_error_code krb5_auth_con_getsendsubkey( krb5_context, krb5_auth_context, krb5_keyblock **); krb5_error_code krb5_auth_con_getrecvsubkey( krb5_context, krb5_auth_context, krb5_keyblock **); krb5_error_code krb5_auth_con_setsendsubkey( krb5_context, krb5_auth_context, krb5_keyblock *); krb5_error_code krb5_auth_con_setrecvsubkey( krb5_context, krb5_auth_context, krb5_keyblock *); krb5_error_code krb5_auth_con_getlocalsubkey (krb5_context, krb5_auth_context, krb5_keyblock **); krb5_error_code krb5_auth_con_getremotesubkey (krb5_context, krb5_auth_context, krb5_keyblock **); krb5_error_code krb5_auth_con_set_req_cksumtype (krb5_context, krb5_auth_context, krb5_cksumtype); krb5_error_code krb5_auth_con_set_safe_cksumtype (krb5_context, krb5_auth_context, krb5_cksumtype); krb5_error_code krb5_auth_con_getlocalseqnumber (krb5_context, krb5_auth_context, krb5_int32 *); krb5_error_code krb5_auth_con_getremoteseqnumber (krb5_context, krb5_auth_context, krb5_int32 *); krb5_error_code krb5_auth_con_initivector (krb5_context, krb5_auth_context); krb5_error_code krb5_auth_con_setivector (krb5_context, krb5_auth_context, krb5_pointer); krb5_error_code krb5_auth_con_getivector (krb5_context, krb5_auth_context, krb5_pointer *); krb5_error_code krb5_auth_con_setrcache (krb5_context, krb5_auth_context, krb5_rcache); krb5_error_code krb5_auth_con_getrcache (krb5_context, krb5_auth_context, krb5_rcache *); krb5_error_code krb5_auth_con_setpermetypes (krb5_context, krb5_auth_context, const krb5_enctype *); krb5_error_code krb5_auth_con_getpermetypes (krb5_context, krb5_auth_context, krb5_enctype **); krb5_error_code krb5_auth_con_getauthenticator (krb5_context, krb5_auth_context, krb5_authenticator **); # 2487 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" krb5_error_code krb5_read_message (krb5_context, krb5_pointer, krb5_data *); krb5_error_code krb5_write_message (krb5_context, krb5_pointer, krb5_data *); int krb5_net_read (krb5_context, int , char *, int); int krb5_net_write (krb5_context, int , const char *, int); krb5_error_code krb5_read_password (krb5_context, const char *, const char *, char *, unsigned int * ); krb5_error_code krb5_aname_to_localname (krb5_context, krb5_const_principal, int, char * ); krb5_error_code krb5_get_host_realm (krb5_context, const char *, char *** ); krb5_error_code krb5_get_fallback_host_realm (krb5_context, krb5_data *, char *** ); krb5_error_code krb5_free_host_realm (krb5_context, char * const * ); krb5_error_code krb5_get_realm_domain (krb5_context, const char *, char ** ); krb5_boolean krb5_kuserok (krb5_context, krb5_principal, const char *); krb5_error_code krb5_auth_con_genaddrs (krb5_context, krb5_auth_context, int, int); krb5_error_code krb5_gen_portaddr (krb5_context, const krb5_address *, krb5_const_pointer, krb5_address **); krb5_error_code krb5_gen_replay_name (krb5_context, const krb5_address *, const char *, char **); krb5_error_code krb5_make_fulladdr (krb5_context, krb5_address *, krb5_address *, krb5_address *); krb5_error_code krb5_set_real_time (krb5_context, krb5_int32, krb5_int32); krb5_error_code krb5_set_debugging_time (krb5_context, krb5_int32, krb5_int32); krb5_error_code krb5_use_natural_time (krb5_context); krb5_error_code krb5_get_time_offsets (krb5_context, krb5_int32 *, krb5_int32 *); krb5_error_code krb5_set_time_offsets (krb5_context, krb5_int32, krb5_int32); krb5_error_code krb5_string_to_enctype (char *, krb5_enctype *); krb5_error_code krb5_string_to_salttype (char *, krb5_int32 *); krb5_error_code krb5_string_to_cksumtype (char *, krb5_cksumtype *); krb5_error_code krb5_string_to_timestamp (char *, krb5_timestamp *); krb5_error_code krb5_string_to_deltat (char *, krb5_deltat *); krb5_error_code krb5_enctype_to_string (krb5_enctype, char *, size_t); krb5_error_code krb5_enctype_to_istring (krb5_enctype, char *, size_t); krb5_error_code krb5_salttype_to_string (krb5_int32, char *, size_t); krb5_error_code krb5_cksumtype_to_string (krb5_cksumtype, char *, size_t); krb5_error_code krb5_timestamp_to_string (krb5_timestamp, char *, size_t); krb5_error_code krb5_timestamp_to_sfstring (krb5_timestamp, char *, size_t, char *); krb5_error_code krb5_deltat_to_string (krb5_deltat, char *, size_t); # 2619 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" typedef struct _krb5_prompt { char *prompt; int hidden; krb5_data *reply; } krb5_prompt; typedef krb5_error_code ( *krb5_prompter_fct)(krb5_context context, void *data, const char *name, const char *banner, int num_prompts, krb5_prompt prompts[]); krb5_error_code krb5_prompter_posix (krb5_context context, void *data, const char *name, const char *banner, int num_prompts, krb5_prompt prompts[]); typedef struct _krb5_get_init_creds_opt { krb5_flags flags; krb5_deltat tkt_life; krb5_deltat renew_life; int forwardable; int proxiable; krb5_enctype *etype_list; int etype_list_length; krb5_address **address_list; krb5_preauthtype *preauth_list; int preauth_list_length; krb5_data *salt; } krb5_get_init_creds_opt; # 2665 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" krb5_error_code krb5_get_init_creds_opt_alloc (krb5_context context, krb5_get_init_creds_opt **opt); void krb5_get_init_creds_opt_free (krb5_context context, krb5_get_init_creds_opt *opt); void krb5_get_init_creds_opt_init (krb5_get_init_creds_opt *opt); void krb5_get_init_creds_opt_set_tkt_life (krb5_get_init_creds_opt *opt, krb5_deltat tkt_life); void krb5_get_init_creds_opt_set_renew_life (krb5_get_init_creds_opt *opt, krb5_deltat renew_life); void krb5_get_init_creds_opt_set_forwardable (krb5_get_init_creds_opt *opt, int forwardable); void krb5_get_init_creds_opt_set_proxiable (krb5_get_init_creds_opt *opt, int proxiable); void krb5_get_init_creds_opt_set_etype_list (krb5_get_init_creds_opt *opt, krb5_enctype *etype_list, int etype_list_length); void krb5_get_init_creds_opt_set_address_list (krb5_get_init_creds_opt *opt, krb5_address **addresses); void krb5_get_init_creds_opt_set_preauth_list (krb5_get_init_creds_opt *opt, krb5_preauthtype *preauth_list, int preauth_list_length); void krb5_get_init_creds_opt_set_salt (krb5_get_init_creds_opt *opt, krb5_data *salt); void krb5_get_init_creds_opt_set_change_password_prompt (krb5_get_init_creds_opt *opt, int prompt); typedef struct _krb5_gic_opt_pa_data { char *attr; char *value; } krb5_gic_opt_pa_data; # 2740 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" krb5_error_code krb5_get_init_creds_opt_set_pa (krb5_context context, krb5_get_init_creds_opt *opt, const char *attr, const char *value); krb5_error_code krb5_get_init_creds_password (krb5_context context, krb5_creds *creds, krb5_principal client, char *password, krb5_prompter_fct prompter, void *data, krb5_deltat start_time, char *in_tkt_service, krb5_get_init_creds_opt *k5_gic_options); krb5_error_code krb5_get_init_creds_keytab (krb5_context context, krb5_creds *creds, krb5_principal client, krb5_keytab arg_keytab, krb5_deltat start_time, char *in_tkt_service, krb5_get_init_creds_opt *k5_gic_options); typedef struct _krb5_verify_init_creds_opt { krb5_flags flags; int ap_req_nofail; } krb5_verify_init_creds_opt; void krb5_verify_init_creds_opt_init (krb5_verify_init_creds_opt *k5_vic_options); void krb5_verify_init_creds_opt_set_ap_req_nofail (krb5_verify_init_creds_opt *k5_vic_options, int ap_req_nofail); krb5_error_code krb5_verify_init_creds (krb5_context context, krb5_creds *creds, krb5_principal ap_req_server, krb5_keytab ap_req_keytab, krb5_ccache *ccache, krb5_verify_init_creds_opt *k5_vic_options); krb5_error_code krb5_get_validated_creds (krb5_context context, krb5_creds *creds, krb5_principal client, krb5_ccache ccache, char *in_tkt_service); krb5_error_code krb5_get_renewed_creds (krb5_context context, krb5_creds *creds, krb5_principal client, krb5_ccache ccache, char *in_tkt_service); krb5_error_code krb5_decode_ticket (const krb5_data *code, krb5_ticket **rep); void krb5_appdefault_string (krb5_context context, const char *appname, const krb5_data *realm, const char *option, const char *default_value, char ** ret_value); void krb5_appdefault_boolean (krb5_context context, const char *appname, const krb5_data *realm, const char *option, int default_value, int *ret_value); krb5_error_code krb5_realm_iterator_create (krb5_context context, void **iter_p); krb5_error_code krb5_realm_iterator (krb5_context context, void **iter_p, char **ret_realm); void krb5_realm_iterator_free (krb5_context context, void **iter_p); void krb5_free_realm_string (krb5_context context, char *str); krb5_error_code krb5_realm_iterator_create (krb5_context context, void **iter_p); krb5_error_code krb5_realm_iterator (krb5_context context, void **iter_p, char **ret_realm); void krb5_realm_iterator_free (krb5_context context, void **iter_p); void krb5_free_realm_string (krb5_context context, char *str); # 2875 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" typedef krb5_int32 krb5_prompt_type; krb5_prompt_type* krb5_get_prompt_types (krb5_context context); void krb5_set_error_message (krb5_context, krb5_error_code, const char *, ...); void krb5_vset_error_message (krb5_context, krb5_error_code, const char *, va_list); # 2897 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h" const char * krb5_get_error_message (krb5_context, krb5_error_code); void krb5_free_error_message (krb5_context, const char *); void krb5_clear_error_message (krb5_context); krb5_error_code krb5_decode_authdata_container(krb5_context context, krb5_authdatatype type, const krb5_authdata *container, krb5_authdata ***authdata); krb5_error_code krb5_encode_authdata_container(krb5_context context, krb5_authdatatype type, krb5_authdata * const*authdata, krb5_authdata ***container); struct krb5_pac_data; typedef struct krb5_pac_data *krb5_pac; krb5_error_code krb5_pac_add_buffer (krb5_context context, krb5_pac pac, krb5_ui_4 type, const krb5_data *data); void krb5_pac_free (krb5_context context, krb5_pac pac); krb5_error_code krb5_pac_get_buffer (krb5_context context, krb5_pac pac, krb5_ui_4 type, krb5_data *data); krb5_error_code krb5_pac_get_types (krb5_context context, krb5_pac pac, size_t *len, krb5_ui_4 **types); krb5_error_code krb5_pac_init (krb5_context context, krb5_pac *pac); krb5_error_code krb5_pac_parse (krb5_context context, const void *ptr, size_t len, krb5_pac *pac); krb5_error_code krb5_pac_verify (krb5_context context, const krb5_pac pac, krb5_timestamp authtime, krb5_const_principal principal, const krb5_keyblock *server, const krb5_keyblock *privsvr); # 258 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 1 "../include/port-sockets.h" 1 # 80 "../include/port-sockets.h" # 1 "../include/autoconf.h" 1 # 81 "../include/port-sockets.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/arpa/inet.h" 1 # 60 "/code/illumos-gate/proto/root_i386/usr/include/arpa/inet.h" extern int inet_net_pton(int, const char *, void *, size_t); extern boolean_t inet_matchaddr(const void *, const char *); extern int inet_pton(int, const char *, void *); extern const char *inet_ntop(int, const void *, char *, socklen_t); extern in_addr_t inet_addr(const char *); extern in_addr_t inet_lnaof(struct in_addr); extern struct in_addr inet_makeaddr(in_addr_t, in_addr_t); extern in_addr_t inet_netof(struct in_addr); extern in_addr_t inet_network(const char *); extern char *inet_neta(ulong_t, char *, size_t); extern char *inet_net_ntop(int, const void *, int, char *, size_t); extern char *inet_cidr_ntop(int, const void *, int, char *, size_t); extern int inet_cidr_pton(int, const char *, void *, int *); extern char *inet_ntoa(struct in_addr); extern int inet_aton(const char *, struct in_addr *); extern uint_t inet_nsap_addr(const char *, uchar_t *, int); extern char *inet_nsap_ntoa(int, const uchar_t *, char *); # 85 "../include/port-sockets.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/netdb.h" 1 # 96 "/code/illumos-gate/proto/root_i386/usr/include/netdb.h" struct hostent { char *h_name; char **h_aliases; int h_addrtype; int h_length; char **h_addr_list; }; # 112 "/code/illumos-gate/proto/root_i386/usr/include/netdb.h" struct addrinfo { int ai_flags; int ai_family; int ai_socktype; int ai_protocol; socklen_t ai_addrlen; char *ai_canonname; struct sockaddr *ai_addr; struct addrinfo *ai_next; }; # 195 "/code/illumos-gate/proto/root_i386/usr/include/netdb.h" typedef struct ipsecalgent { char **a_names; int a_proto_num; int a_alg_num; char *a_mech_name; int *a_block_sizes; int *a_key_sizes; int a_key_increment; int *a_mech_params; int a_alg_flags; } ipsecalgent_t; # 217 "/code/illumos-gate/proto/root_i386/usr/include/netdb.h" struct netent { char *n_name; char **n_aliases; int n_addrtype; in_addr_t n_net; }; struct protoent { char *p_name; char **p_aliases; int p_proto; }; struct servent { char *s_name; char **s_aliases; int s_port; char *s_proto; }; struct hostent *gethostbyname_r (const char *, struct hostent *, char *, int, int *h_errnop); struct hostent *gethostbyaddr_r (const char *, int, int, struct hostent *, char *, int, int *h_errnop); struct hostent *getipnodebyname(const char *, int, int, int *); struct hostent *getipnodebyaddr(const void *, size_t, int, int *); void freehostent(struct hostent *); struct hostent *gethostent_r(struct hostent *, char *, int, int *h_errnop); struct servent *getservbyname_r (const char *name, const char *, struct servent *, char *, int); struct servent *getservbyport_r (int port, const char *, struct servent *, char *, int); struct servent *getservent_r(struct servent *, char *, int); struct netent *getnetbyname_r (const char *, struct netent *, char *, int); struct netent *getnetbyaddr_r(long, int, struct netent *, char *, int); struct netent *getnetent_r(struct netent *, char *, int); struct protoent *getprotobyname_r (const char *, struct protoent *, char *, int); struct protoent *getprotobynumber_r (int, struct protoent *, char *, int); struct protoent *getprotoent_r(struct protoent *, char *, int); int getnetgrent_r(char **, char **, char **, char *, int); int innetgr(const char *, const char *, const char *, const char *); struct hostent *gethostbyname(const char *); struct hostent *gethostent(void); struct netent *getnetbyaddr(in_addr_t, int); struct netent *getnetbyname(const char *); struct netent *getnetent(void); struct protoent *getprotobyname(const char *); struct protoent *getprotobynumber(int); struct protoent *getprotoent(void); struct servent *getservbyname(const char *, const char *); struct servent *getservbyport(int, const char *); struct servent *getservent(void); struct hostent *gethostbyaddr(const void *, socklen_t, int); int endhostent(void); int endnetent(void); int endprotoent(void); int endservent(void); int sethostent(int); int setnetent(int); int setprotoent(int); int setservent(int); # 318 "/code/illumos-gate/proto/root_i386/usr/include/netdb.h" int getaddrinfo(const char *, const char *, const struct addrinfo *, struct addrinfo **); void freeaddrinfo(struct addrinfo *); const char *gai_strerror(int); int getnameinfo(const struct sockaddr *, socklen_t, char *, socklen_t, char *, socklen_t, int); int getnetgrent(char **, char **, char **); int setnetgrent(const char *); int endnetgrent(void); int rcmd(char **, unsigned short, const char *, const char *, const char *, int *); int rcmd_af(char **, unsigned short, const char *, const char *, const char *, int *, int); int rresvport_af(int *, int); int rresvport_addr(int *, struct sockaddr_storage *); int rexec(char **, unsigned short, const char *, const char *, const char *, int *); int rexec_af(char **, unsigned short, const char *, const char *, const char *, int *, int); int rresvport(int *); int ruserok(const char *, int, const char *, const char *); struct hostent *gethostbyname2(const char *, int); void herror(const char *); const char *hstrerror(int); struct ipsecalgent *getipsecalgbyname(const char *, int, int *); struct ipsecalgent *getipsecalgbynum(int, int, int *); int getipsecprotobyname(const char *doi_name); char *getipsecprotobynum(int doi_domain); void freeipsecalgent(struct ipsecalgent *ptr); # 366 "/code/illumos-gate/proto/root_i386/usr/include/netdb.h" extern int h_errno; extern int *__h_errno(void); # 86 "../include/port-sockets.h" 2 extern int h_errno; # 1 "/code/illumos-gate/proto/root_i386/usr/include/net/if.h" 1 # 62 "/code/illumos-gate/proto/root_i386/usr/include/net/if.h" struct ifnet { char *if_name; short if_unit; short if_mtu; short if_flags; short if_timer; ushort_t if_promisc; int if_metric; struct ifaddr *if_addrlist; struct ifqueue { struct mbuf *ifq_head; struct mbuf *ifq_tail; int ifq_len; int ifq_maxlen; int ifq_drops; } if_snd; int (*if_init)(); int (*if_output)(); int (*if_ioctl)(); int (*if_reset)(); int (*if_watchdog)(); int if_ipackets; int if_ierrors; int if_opackets; int if_oerrors; int if_collisions; struct ifnet *if_next; struct ifnet *if_upper; struct ifnet *if_lower; int (*if_input)(); int (*if_ctlin)(); int (*if_ctlout)(); struct map *if_memmap; }; # 260 "/code/illumos-gate/proto/root_i386/usr/include/net/if.h" struct ifaddr { struct sockaddr ifa_addr; union { struct sockaddr ifu_broadaddr; struct sockaddr ifu_dstaddr; } ifa_ifu; struct ifnet *ifa_ifp; struct ifaddr *ifa_next; }; # 285 "/code/illumos-gate/proto/root_i386/usr/include/net/if.h" typedef struct lif_nd_req { struct sockaddr_storage lnr_addr; uint8_t lnr_state_create; uint8_t lnr_state_same_lla; uint8_t lnr_state_diff_lla; int lnr_hdw_len; int lnr_flags; int lnr_pad0; char lnr_hdw_addr[64]; } lif_nd_req_t; # 330 "/code/illumos-gate/proto/root_i386/usr/include/net/if.h" typedef struct lif_ifinfo_req { uint8_t lir_maxhops; uint32_t lir_reachtime; uint32_t lir_reachretrans; uint32_t lir_maxmtu; } lif_ifinfo_req_t; # 363 "/code/illumos-gate/proto/root_i386/usr/include/net/if.h" struct lifreq { char lifr_name[32]; union { int lifru_addrlen; uint_t lifru_ppa; } lifr_lifru1; uint_t lifr_type; union { struct sockaddr_storage lifru_addr; struct sockaddr_storage lifru_dstaddr; struct sockaddr_storage lifru_broadaddr; struct sockaddr_storage lifru_token; struct sockaddr_storage lifru_subnet; int lifru_index; uint64_t lifru_flags; int lifru_metric; uint_t lifru_mtu; int lif_muxid[2]; struct lif_nd_req lifru_nd_req; struct lif_ifinfo_req lifru_ifinfo_req; char lifru_groupname[32]; char lifru_binding[32]; zoneid_t lifru_zoneid; uint_t lifru_dadstate; } lifr_lifru; # 408 "/code/illumos-gate/proto/root_i386/usr/include/net/if.h" }; struct sioc_addrreq { struct sockaddr_storage sa_addr; int sa_res; int sa_pad; }; struct sioc_lsg_req { struct sockaddr_storage slr_src; struct sockaddr_storage slr_grp; uint_t slr_pktcnt; uint_t slr_bytecnt; uint_t slr_wrong_if; uint_t slr_pad; }; typedef enum { DAD_IN_PROGRESS = 0x1, DAD_DONE = 0x2 } glif_dad_state_t; # 447 "/code/illumos-gate/proto/root_i386/usr/include/net/if.h" struct ifreq { char ifr_name[16]; union { struct sockaddr ifru_addr; struct sockaddr ifru_dstaddr; char ifru_oname[16]; struct sockaddr ifru_broadaddr; int ifru_index; uint_t ifru_mtu; short ifru_flags; int ifru_metric; char ifru_data[1]; char ifru_enaddr[6]; int if_muxid[2]; struct ifr_ppaflags { short ifrup_flags; short ifrup_filler; uint_t ifrup_ppa; } ifru_ppaflags; struct ifr_dnld_reqs { uint32_t v_addr; uint32_t m_addr; uint32_t ex_addr; uint32_t size; } ifru_dnld_req; struct ifr_fddi_stats { uint32_t stat_size; uint32_t fddi_stats; } ifru_fddi_stat; struct ifr_netmapents { uint32_t map_ent_size, entry_number; uint32_t fddi_map_ent; } ifru_netmapent; struct ifr_fddi_gen_struct { uint32_t ifru_fddi_gioctl; uint32_t ifru_fddi_gaddr; } ifru_fddi_gstruct; } ifr_ifru; # 520 "/code/illumos-gate/proto/root_i386/usr/include/net/if.h" }; struct lifnum { sa_family_t lifn_family; int lifn_flags; int lifn_count; }; # 536 "/code/illumos-gate/proto/root_i386/usr/include/net/if.h" struct lifconf { sa_family_t lifc_family; int lifc_flags; int lifc_len; union { caddr_t lifcu_buf; struct lifreq *lifcu_req; } lifc_lifcu; }; struct lifsrcof { uint_t lifs_ifindex; size_t lifs_maxlen; size_t lifs_len; union { caddr_t lifsu_buf; struct lifreq *lifsu_req; } lifs_lifsu; }; # 608 "/code/illumos-gate/proto/root_i386/usr/include/net/if.h" typedef struct lifgroupinfo { char gi_grname[32]; char gi_grifname[32]; char gi_m4ifname[32]; char gi_m6ifname[32]; char gi_bcifname[32]; boolean_t gi_v4; boolean_t gi_v6; uint_t gi_nv4; uint_t gi_nv6; uint_t gi_mactype; } lifgroupinfo_t; struct ifconf { int ifc_len; union { caddr_t ifcu_buf; struct ifreq *ifcu_req; } ifc_ifcu; }; # 649 "/code/illumos-gate/proto/root_i386/usr/include/net/if.h" typedef struct if_data { uchar_t ifi_type; uchar_t ifi_addrlen; uchar_t ifi_hdrlen; uint_t ifi_mtu; uint_t ifi_metric; uint_t ifi_baudrate; uint_t ifi_ipackets; uint_t ifi_ierrors; uint_t ifi_opackets; uint_t ifi_oerrors; uint_t ifi_collisions; uint_t ifi_ibytes; uint_t ifi_obytes; uint_t ifi_imcasts; uint_t ifi_omcasts; uint_t ifi_iqdrops; uint_t ifi_noproto; struct timeval ifi_lastchange; } if_data_t; typedef struct if_msghdr { ushort_t ifm_msglen; uchar_t ifm_version; uchar_t ifm_type; int ifm_addrs; int ifm_flags; ushort_t ifm_index; struct if_data ifm_data; } if_msghdr_t; typedef struct ifa_msghdr { ushort_t ifam_msglen; uchar_t ifam_version; uchar_t ifam_type; int ifam_addrs; int ifam_flags; ushort_t ifam_index; int ifam_metric; } ifa_msghdr_t; # 711 "/code/illumos-gate/proto/root_i386/usr/include/net/if.h" struct if_nameindex { unsigned if_index; char *if_name; }; extern unsigned if_nametoindex(const char *); extern char *if_indextoname(unsigned, char *); extern struct if_nameindex *if_nameindex(void); extern void if_freenameindex(struct if_nameindex *); # 95 "../include/port-sockets.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/filio.h" 1 # 42 "/code/illumos-gate/proto/root_i386/usr/include/sys/filio.h" #pragma ident "%Z%%M% %I% %E% SMI" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/ioccom.h" 1 # 43 "/code/illumos-gate/proto/root_i386/usr/include/sys/ioccom.h" #pragma ident "%Z%%M% %I% %E% SMI" # 49 "/code/illumos-gate/proto/root_i386/usr/include/sys/filio.h" 2 # 100 "../include/port-sockets.h" 2 # 128 "../include/port-sockets.h" typedef struct iovec sg_buf; # 262 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 1 "../include/socket-utils.h" 1 # 60 "../include/socket-utils.h" # 1 "../include/autoconf.h" 1 # 61 "../include/socket-utils.h" 2 # 1 "../include/port-sockets.h" 1 # 63 "../include/socket-utils.h" 2 # 1 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-platform.h" 1 # 51 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-platform.h" # 1 "../include/autoconf.h" 1 # 52 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-platform.h" 2 # 201 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-platform.h" # 1 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" 1 # 65 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" # 1 "../include/autoconf.h" 1 # 66 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" 2 # 184 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/assert.h" 1 # 42 "/code/illumos-gate/proto/root_i386/usr/include/assert.h" extern void __assert(const char *, const char *, int); # 185 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" 2 # 209 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" typedef char k5_debug_loc; # 280 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" typedef char k5_debug_mutex_stats; typedef int k5_mutex_stats_tmp; static void k5_mutex_lock_update_stats(k5_debug_mutex_stats *m, k5_mutex_stats_tmp t) { } void krb5int_mutex_lock_update_stats(k5_debug_mutex_stats *m, k5_mutex_stats_tmp start); void krb5int_mutex_unlock_update_stats(k5_debug_mutex_stats *m); void krb5int_mutex_report_stats( ); # 363 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" typedef char k5_os_nothread_mutex; static int k5_os_nothread_mutex_finish_init(k5_os_nothread_mutex *m) { return 0; } static int k5_os_nothread_mutex_init(k5_os_nothread_mutex *m) { return 0; } static int k5_os_nothread_mutex_destroy(k5_os_nothread_mutex *m) { return 0; } static int k5_os_nothread_mutex_lock(k5_os_nothread_mutex *m) { return 0; } static int k5_os_nothread_mutex_unlock(k5_os_nothread_mutex *m) { return 0; } # 403 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" typedef unsigned char k5_os_nothread_once_t; # 430 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/pthread.h" 1 # 37 "/code/illumos-gate/proto/root_i386/usr/include/pthread.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sched.h" 1 # 39 "/code/illumos-gate/proto/root_i386/usr/include/sched.h" struct sched_param { int sched_priority; int sched_pad[8]; }; # 59 "/code/illumos-gate/proto/root_i386/usr/include/sched.h" int sched_getparam(pid_t, struct sched_param *); int sched_setparam(pid_t, const struct sched_param *); int sched_getscheduler(pid_t); int sched_setscheduler(pid_t, int, const struct sched_param *); int sched_yield(void); int sched_get_priority_max(int); int sched_get_priority_min(int); int sched_rr_get_interval(pid_t, struct timespec *); # 38 "/code/illumos-gate/proto/root_i386/usr/include/pthread.h" 2 # 151 "/code/illumos-gate/proto/root_i386/usr/include/pthread.h" typedef struct _cleanup { uintptr_t pthread_cleanup_pad[4]; } _cleanup_t; void __pthread_cleanup_push(void (*)(void *), void *, caddr_t, _cleanup_t *); void __pthread_cleanup_pop(int, _cleanup_t *); caddr_t _getfp(void); typedef void (*_Voidfp)(void*); # 189 "/code/illumos-gate/proto/root_i386/usr/include/pthread.h" extern int pthread_atfork(void (*) (void), void (*) (void), void (*) (void)); extern int pthread_attr_init(pthread_attr_t *); extern int pthread_attr_destroy(pthread_attr_t *); extern int pthread_attr_setstack(pthread_attr_t *, void *, size_t); extern int pthread_attr_getstack(const pthread_attr_t *, void **, size_t *); extern int pthread_attr_setstacksize(pthread_attr_t *, size_t); extern int pthread_attr_getstacksize(const pthread_attr_t *, size_t *); extern int pthread_attr_setstackaddr(pthread_attr_t *, void *); extern int pthread_attr_getstackaddr(const pthread_attr_t *, void **); extern int pthread_attr_setdetachstate(pthread_attr_t *, int); extern int pthread_attr_getdetachstate(const pthread_attr_t *, int *); extern int pthread_attr_setscope(pthread_attr_t *, int); extern int pthread_attr_getscope(const pthread_attr_t *, int *); extern int pthread_attr_setinheritsched(pthread_attr_t *, int); extern int pthread_attr_getinheritsched(const pthread_attr_t *, int *); extern int pthread_attr_setschedpolicy(pthread_attr_t *, int); extern int pthread_attr_getschedpolicy(const pthread_attr_t *, int *); extern int pthread_attr_setschedparam(pthread_attr_t *, const struct sched_param *); extern int pthread_attr_getschedparam(const pthread_attr_t *, struct sched_param *); extern int pthread_create(pthread_t *, const pthread_attr_t *, void * (*)(void *), void *); extern int pthread_once(pthread_once_t *, void (*)(void)); extern int pthread_join(pthread_t, void **); extern int pthread_detach(pthread_t); extern void pthread_exit(void *) __attribute__((__noreturn__)); extern int pthread_cancel(pthread_t); extern int pthread_setschedparam(pthread_t, int, const struct sched_param *); extern int pthread_getschedparam(pthread_t, int *, struct sched_param *); extern int pthread_setschedprio(pthread_t, int); extern int pthread_setcancelstate(int, int *); extern int pthread_setcanceltype(int, int *); extern void pthread_testcancel(void); extern int pthread_equal(pthread_t, pthread_t); extern int pthread_key_create(pthread_key_t *, void (*)(void *)); extern int pthread_key_create_once_np(pthread_key_t *, void (*)(void *)); extern int pthread_key_delete(pthread_key_t); extern int pthread_setspecific(pthread_key_t, const void *); extern void *pthread_getspecific(pthread_key_t); extern pthread_t pthread_self(void); extern int pthread_mutexattr_init(pthread_mutexattr_t *); extern int pthread_mutexattr_destroy(pthread_mutexattr_t *); extern int pthread_mutexattr_setpshared(pthread_mutexattr_t *, int); extern int pthread_mutexattr_getpshared( const pthread_mutexattr_t *, int *); extern int pthread_mutexattr_setprotocol(pthread_mutexattr_t *, int); extern int pthread_mutexattr_getprotocol( const pthread_mutexattr_t *, int *); extern int pthread_mutexattr_setprioceiling(pthread_mutexattr_t *, int); extern int pthread_mutexattr_getprioceiling( const pthread_mutexattr_t *, int *); extern int pthread_mutexattr_setrobust(pthread_mutexattr_t *, int); extern int pthread_mutexattr_getrobust( const pthread_mutexattr_t *, int *); extern int pthread_mutex_init(pthread_mutex_t *, const pthread_mutexattr_t *); extern int pthread_mutex_consistent(pthread_mutex_t *); extern int pthread_mutex_destroy(pthread_mutex_t *); extern int pthread_mutex_lock(pthread_mutex_t *); extern int pthread_mutex_timedlock(pthread_mutex_t *, const struct timespec *); extern int pthread_mutex_reltimedlock_np(pthread_mutex_t *, const struct timespec *); extern int pthread_mutex_unlock(pthread_mutex_t *); extern int pthread_mutex_trylock(pthread_mutex_t *); extern int pthread_mutex_setprioceiling(pthread_mutex_t *, int, int *); extern int pthread_mutex_getprioceiling(const pthread_mutex_t *, int *); extern int pthread_condattr_init(pthread_condattr_t *); extern int pthread_condattr_destroy(pthread_condattr_t *); extern int pthread_condattr_setclock(pthread_condattr_t *, clockid_t); extern int pthread_condattr_getclock(const pthread_condattr_t *, clockid_t *); extern int pthread_condattr_setpshared(pthread_condattr_t *, int); extern int pthread_condattr_getpshared(const pthread_condattr_t *, int *); extern int pthread_cond_init(pthread_cond_t *, const pthread_condattr_t *); extern int pthread_cond_destroy(pthread_cond_t *); extern int pthread_cond_broadcast(pthread_cond_t *); extern int pthread_cond_signal(pthread_cond_t *); extern int pthread_cond_wait(pthread_cond_t *, pthread_mutex_t *); extern int pthread_cond_timedwait(pthread_cond_t *, pthread_mutex_t *, const struct timespec *); extern int pthread_cond_reltimedwait_np(pthread_cond_t *, pthread_mutex_t *, const struct timespec *); extern int pthread_attr_getguardsize(const pthread_attr_t *, size_t *); extern int pthread_attr_setguardsize(pthread_attr_t *, size_t); extern int pthread_getconcurrency(void); extern int pthread_setconcurrency(int); extern int pthread_mutexattr_settype(pthread_mutexattr_t *, int); extern int pthread_mutexattr_gettype(const pthread_mutexattr_t *, int *); extern int pthread_rwlock_init(pthread_rwlock_t *, const pthread_rwlockattr_t *); extern int pthread_rwlock_destroy(pthread_rwlock_t *); extern int pthread_rwlock_rdlock(pthread_rwlock_t *); extern int pthread_rwlock_timedrdlock(pthread_rwlock_t *, const struct timespec *); extern int pthread_rwlock_reltimedrdlock_np(pthread_rwlock_t *, const struct timespec *); extern int pthread_rwlock_tryrdlock(pthread_rwlock_t *); extern int pthread_rwlock_wrlock(pthread_rwlock_t *); extern int pthread_rwlock_timedwrlock(pthread_rwlock_t *, const struct timespec *); extern int pthread_rwlock_reltimedwrlock_np(pthread_rwlock_t *, const struct timespec *); extern int pthread_rwlock_trywrlock(pthread_rwlock_t *); extern int pthread_rwlock_unlock(pthread_rwlock_t *); extern int pthread_rwlockattr_init(pthread_rwlockattr_t *); extern int pthread_rwlockattr_destroy(pthread_rwlockattr_t *); extern int pthread_rwlockattr_getpshared( const pthread_rwlockattr_t *, int *); extern int pthread_rwlockattr_setpshared(pthread_rwlockattr_t *, int); extern int pthread_spin_init(pthread_spinlock_t *, int); extern int pthread_spin_destroy(pthread_spinlock_t *); extern int pthread_spin_lock(pthread_spinlock_t *); extern int pthread_spin_trylock(pthread_spinlock_t *); extern int pthread_spin_unlock(pthread_spinlock_t *); extern int pthread_barrierattr_init(pthread_barrierattr_t *); extern int pthread_barrierattr_destroy(pthread_barrierattr_t *); extern int pthread_barrierattr_setpshared(pthread_barrierattr_t *, int); extern int pthread_barrierattr_getpshared( const pthread_barrierattr_t *, int *); extern int pthread_barrier_init(pthread_barrier_t *, const pthread_barrierattr_t *, uint_t); extern int pthread_barrier_destroy(pthread_barrier_t *); extern int pthread_barrier_wait(pthread_barrier_t *); extern int pthread_mutex_consistent_np(pthread_mutex_t *); extern int pthread_mutexattr_setrobust_np(pthread_mutexattr_t *, int); extern int pthread_mutexattr_getrobust_np( const pthread_mutexattr_t *, int *); # 431 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" 2 # 459 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" #pragma weak pthread_once #pragma weak pthread_mutex_lock #pragma weak pthread_mutex_unlock #pragma weak pthread_mutex_destroy #pragma weak pthread_mutex_init #pragma weak pthread_self #pragma weak pthread_equal #pragma weak pthread_mutexattr_setrobust_np # 506 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" typedef struct { pthread_once_t o; k5_os_nothread_once_t n; } k5_once_t; # 520 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" typedef struct { pthread_mutex_t p; } k5_os_mutex; # 561 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" static void k5_pthread_assert_locked(k5_os_mutex *m) { } # 570 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" static void k5_pthread_assert_unlocked(pthread_mutex_t *m) { } # 679 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" static int k5_os_mutex_finish_init(k5_os_mutex *m) { return 0; } # 742 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" typedef struct { k5_debug_loc loc_last, loc_created; k5_os_mutex os; k5_debug_mutex_stats stats; } k5_mutex_t; static int k5_mutex_init_1(k5_mutex_t *m, k5_debug_loc l) { int err = pthread_mutex_init(&(&m->os)->p, 0); if (err) return err; m->loc_created = m->loc_last = l; err = (*(&m->stats) = 's', 0); (void)((err == 0) || (__assert("err == 0", "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h", 757), 0)); return 0; } static int k5_mutex_finish_init_1(k5_mutex_t *m, k5_debug_loc l) { int err = k5_os_mutex_finish_init(&m->os); if (err) return err; m->loc_created = m->loc_last = l; err = (0); (void)((err == 0) || (__assert("err == 0", "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h", 768), 0)); return 0; } # 815 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-thread.h" typedef enum { K5_KEY_COM_ERR, K5_KEY_GSS_KRB5_SET_CCACHE_OLD_NAME, K5_KEY_GSS_KRB5_CCACHE_NAME, K5_KEY_GSS_KRB5_ERROR_MESSAGE, K5_KEY_GSS_SPNEGO_ERROR_MESSAGE, K5_KEY_MAX } k5_key_t; extern int krb5int_key_register(k5_key_t, void (*)(void *)); extern void *krb5int_getspecific(k5_key_t); extern int krb5int_setspecific(k5_key_t, void *); extern int krb5int_key_delete(k5_key_t); extern int krb5int_mutex_alloc (k5_mutex_t **); extern void krb5int_mutex_free (k5_mutex_t *); extern int krb5int_mutex_lock (k5_mutex_t *); extern int krb5int_mutex_unlock (k5_mutex_t *); # 202 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-platform.h" 2 typedef struct { k5_once_t once; int error, did_run; void (*fn)(void); } k5_init_t; # 401 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-platform.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/stdint.h" 1 # 30 "/code/illumos-gate/proto/root_i386/usr/include/stdint.h" #pragma ident "%Z%%M% %I% %E% SMI" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/stdint.h" 1 # 30 "/code/illumos-gate/proto/root_i386/usr/include/sys/stdint.h" #pragma ident "%Z%%M% %I% %E% SMI" # 40 "/code/illumos-gate/proto/root_i386/usr/include/sys/stdint.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/int_const.h" 1 # 41 "/code/illumos-gate/proto/root_i386/usr/include/sys/stdint.h" 2 # 39 "/code/illumos-gate/proto/root_i386/usr/include/stdint.h" 2 # 402 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-platform.h" 2 # 65 "../include/socket-utils.h" 2 # 77 "../include/socket-utils.h" static __inline__ struct sockaddr_in *sa2sin (struct sockaddr *sa) { return (struct sockaddr_in *) (void *) sa; } static __inline__ struct sockaddr_in6 *sa2sin6 (struct sockaddr *sa) { return (struct sockaddr_in6 *) (void *) sa; } static __inline__ struct sockaddr *ss2sa (struct sockaddr_storage *ss) { return (struct sockaddr *) ss; } static __inline__ struct sockaddr_in *ss2sin (struct sockaddr_storage *ss) { return (struct sockaddr_in *) ss; } static __inline__ struct sockaddr_in6 *ss2sin6 (struct sockaddr_storage *ss) { return (struct sockaddr_in6 *) ss; } # 263 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 390 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" typedef struct _krb5_alt_method { krb5_magic magic; krb5_int32 method; unsigned int length; krb5_octet *data; } krb5_alt_method; # 404 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" typedef struct _krb5_etype_info_entry { krb5_magic magic; krb5_enctype etype; unsigned int length; krb5_octet *salt; krb5_data s2kparams; } krb5_etype_info_entry; # 420 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" typedef krb5_etype_info_entry ** krb5_etype_info; typedef struct _krb5_etype_list { int length; krb5_enctype *etypes; } krb5_etype_list; # 468 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" typedef struct _krb5_predicted_sam_response { krb5_magic magic; krb5_keyblock sam_key; krb5_flags sam_flags; krb5_timestamp stime; krb5_int32 susec; krb5_principal client; krb5_data msd; } krb5_predicted_sam_response; typedef struct _krb5_sam_challenge { krb5_magic magic; krb5_int32 sam_type; krb5_flags sam_flags; krb5_data sam_type_name; krb5_data sam_track_id; krb5_data sam_challenge_label; krb5_data sam_challenge; krb5_data sam_response_prompt; krb5_data sam_pk_for_sad; krb5_int32 sam_nonce; krb5_checksum sam_cksum; } krb5_sam_challenge; typedef struct _krb5_sam_key { krb5_magic magic; krb5_keyblock sam_key; } krb5_sam_key; typedef struct _krb5_enc_sam_response_enc { krb5_magic magic; krb5_int32 sam_nonce; krb5_timestamp sam_timestamp; krb5_int32 sam_usec; krb5_data sam_sad; } krb5_enc_sam_response_enc; typedef struct _krb5_sam_response { krb5_magic magic; krb5_int32 sam_type; krb5_flags sam_flags; krb5_data sam_track_id; krb5_enc_data sam_enc_key; krb5_enc_data sam_enc_nonce_or_ts; krb5_int32 sam_nonce; krb5_timestamp sam_patimestamp; } krb5_sam_response; typedef struct _krb5_sam_challenge_2 { krb5_data sam_challenge_2_body; krb5_checksum **sam_cksum; } krb5_sam_challenge_2; typedef struct _krb5_sam_challenge_2_body { krb5_magic magic; krb5_int32 sam_type; krb5_flags sam_flags; krb5_data sam_type_name; krb5_data sam_track_id; krb5_data sam_challenge_label; krb5_data sam_challenge; krb5_data sam_response_prompt; krb5_data sam_pk_for_sad; krb5_int32 sam_nonce; krb5_enctype sam_etype; } krb5_sam_challenge_2_body; typedef struct _krb5_sam_response_2 { krb5_magic magic; krb5_int32 sam_type; krb5_flags sam_flags; krb5_data sam_track_id; krb5_enc_data sam_enc_nonce_or_sad; krb5_int32 sam_nonce; } krb5_sam_response_2; typedef struct _krb5_enc_sam_response_enc_2 { krb5_magic magic; krb5_int32 sam_nonce; krb5_data sam_sad; } krb5_enc_sam_response_enc_2; # 1 "../include/k5-int-pkinit.h" 1 # 40 "../include/k5-int-pkinit.h" typedef struct _krb5_pk_authenticator { krb5_int32 cusec; krb5_timestamp ctime; krb5_int32 nonce; krb5_checksum paChecksum; } krb5_pk_authenticator; typedef struct _krb5_pk_authenticator_draft9 { krb5_principal kdcName; krb5_octet_data kdcRealm; krb5_int32 cusec; krb5_timestamp ctime; krb5_int32 nonce; } krb5_pk_authenticator_draft9; typedef struct _krb5_algorithm_identifier { krb5_octet_data algorithm; krb5_octet_data parameters; } krb5_algorithm_identifier; typedef struct _krb5_subject_pk_info { krb5_algorithm_identifier algorithm; krb5_octet_data subjectPublicKey; } krb5_subject_pk_info; typedef struct _krb5_auth_pack { krb5_pk_authenticator pkAuthenticator; krb5_subject_pk_info *clientPublicValue; krb5_algorithm_identifier **supportedCMSTypes; krb5_octet_data clientDHNonce; } krb5_auth_pack; typedef struct _krb5_auth_pack_draft9 { krb5_pk_authenticator_draft9 pkAuthenticator; krb5_subject_pk_info *clientPublicValue; } krb5_auth_pack_draft9; typedef struct _krb5_external_principal_identifier { krb5_octet_data subjectName; krb5_octet_data issuerAndSerialNumber; krb5_octet_data subjectKeyIdentifier; } krb5_external_principal_identifier; typedef struct _krb5_trusted_ca { enum { choice_trusted_cas_UNKNOWN = -1, choice_trusted_cas_principalName = 0, choice_trusted_cas_caName = 1, choice_trusted_cas_issuerAndSerial = 2 } choice; union { krb5_principal principalName; krb5_octet_data caName; krb5_octet_data issuerAndSerial; } u; } krb5_trusted_ca; typedef struct _krb5_typed_data { krb5_magic magic; krb5_int32 type; unsigned int length; krb5_octet *data; } krb5_typed_data; typedef struct _krb5_pa_pk_as_req_draft9 { krb5_octet_data signedAuthPack; krb5_trusted_ca **trustedCertifiers; krb5_octet_data kdcCert; krb5_octet_data encryptionCert; } krb5_pa_pk_as_req_draft9; typedef struct _krb5_pa_pk_as_req { krb5_octet_data signedAuthPack; krb5_external_principal_identifier **trustedCertifiers; krb5_octet_data kdcPkId; } krb5_pa_pk_as_req; typedef struct _krb5_dh_rep_info { krb5_octet_data dhSignedData; krb5_octet_data serverDHNonce; } krb5_dh_rep_info; typedef struct _krb5_kdc_dh_key_info { krb5_octet_data subjectPublicKey; krb5_int32 nonce; krb5_timestamp dhKeyExpiration; } krb5_kdc_dh_key_info; typedef struct _krb5_kdc_dh_key_info_draft9 { krb5_octet_data subjectPublicKey; krb5_int32 nonce; } krb5_kdc_dh_key_info_draft9; typedef struct _krb5_reply_key_pack { krb5_keyblock replyKey; krb5_checksum asChecksum; } krb5_reply_key_pack; typedef struct _krb5_reply_key_pack_draft9 { krb5_keyblock replyKey; krb5_int32 nonce; } krb5_reply_key_pack_draft9; typedef struct _krb5_pa_pk_as_rep_draft9 { enum { choice_pa_pk_as_rep_draft9_UNKNOWN = -1, choice_pa_pk_as_rep_draft9_dhSignedData = 0, choice_pa_pk_as_rep_draft9_encKeyPack = 1 } choice; union { krb5_octet_data dhSignedData; krb5_octet_data encKeyPack; } u; } krb5_pa_pk_as_rep_draft9; typedef struct _krb5_pa_pk_as_rep { enum { choice_pa_pk_as_rep_UNKNOWN = -1, choice_pa_pk_as_rep_dhInfo = 0, choice_pa_pk_as_rep_encKeyPack = 1 } choice; union { krb5_dh_rep_info dh_Info; krb5_octet_data encKeyPack; } u; } krb5_pa_pk_as_rep; # 192 "../include/k5-int-pkinit.h" krb5_error_code encode_krb5_pa_pk_as_req (const krb5_pa_pk_as_req *rep, krb5_data **code); krb5_error_code encode_krb5_pa_pk_as_req_draft9 (const krb5_pa_pk_as_req_draft9 *rep, krb5_data **code); krb5_error_code encode_krb5_pa_pk_as_rep (const krb5_pa_pk_as_rep *rep, krb5_data **code); krb5_error_code encode_krb5_pa_pk_as_rep_draft9 (const krb5_pa_pk_as_rep_draft9 *rep, krb5_data **code); krb5_error_code encode_krb5_auth_pack (const krb5_auth_pack *rep, krb5_data **code); krb5_error_code encode_krb5_auth_pack_draft9 (const krb5_auth_pack_draft9 *rep, krb5_data **code); krb5_error_code encode_krb5_kdc_dh_key_info (const krb5_kdc_dh_key_info *rep, krb5_data **code); krb5_error_code encode_krb5_reply_key_pack (const krb5_reply_key_pack *, krb5_data **code); krb5_error_code encode_krb5_reply_key_pack_draft9 (const krb5_reply_key_pack_draft9 *, krb5_data **code); krb5_error_code encode_krb5_typed_data (const krb5_typed_data **, krb5_data **code); krb5_error_code encode_krb5_td_trusted_certifiers (const krb5_external_principal_identifier **, krb5_data **code); krb5_error_code encode_krb5_td_dh_parameters (const krb5_algorithm_identifier **, krb5_data **code); krb5_error_code decode_krb5_pa_pk_as_req (const krb5_data *, krb5_pa_pk_as_req **); krb5_error_code decode_krb5_pa_pk_as_req_draft9 (const krb5_data *, krb5_pa_pk_as_req_draft9 **); krb5_error_code decode_krb5_pa_pk_as_rep (const krb5_data *, krb5_pa_pk_as_rep **); krb5_error_code decode_krb5_pa_pk_as_rep_draft9 (const krb5_data *, krb5_pa_pk_as_rep_draft9 **); krb5_error_code decode_krb5_auth_pack (const krb5_data *, krb5_auth_pack **); krb5_error_code decode_krb5_auth_pack_draft9 (const krb5_data *, krb5_auth_pack_draft9 **); krb5_error_code decode_krb5_kdc_dh_key_info (const krb5_data *, krb5_kdc_dh_key_info **); krb5_error_code decode_krb5_principal_name (const krb5_data *, krb5_principal_data **); krb5_error_code decode_krb5_reply_key_pack (const krb5_data *, krb5_reply_key_pack **); krb5_error_code decode_krb5_reply_key_pack_draft9 (const krb5_data *, krb5_reply_key_pack_draft9 **); krb5_error_code decode_krb5_typed_data (const krb5_data *, krb5_typed_data ***); krb5_error_code decode_krb5_td_trusted_certifiers (const krb5_data *, krb5_external_principal_identifier ***); krb5_error_code decode_krb5_td_dh_parameters (const krb5_data *, krb5_algorithm_identifier ***); # 556 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 566 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" # 1 "../include/db-ndbm.h" 1 # 9 "../include/db-ndbm.h" #pragma ident "%Z%%M% %I% %E% SMI" # 1 "/code/illumos-gate/proto/root_i386/usr/include/ndbm.h" 1 # 65 "/code/illumos-gate/proto/root_i386/usr/include/ndbm.h" typedef struct { int dbm_dirf; int dbm_pagf; int dbm_flags; long dbm_maxbno; long dbm_bitno; long dbm_hmask; long dbm_blkptr; int dbm_keyptr; long dbm_blkno; long dbm_pagbno; char dbm_pagbuf[1024]; long dbm_dirbno; char dbm_dirbuf[4096]; } DBM; typedef struct { char *dptr; long dsize; } datum; DBM *dbm_open(const char *, int, mode_t); void dbm_close(DBM *); datum dbm_fetch(DBM *, datum); datum dbm_firstkey(DBM *); datum dbm_nextkey(DBM *); int dbm_delete(DBM *, datum); int dbm_store(DBM *, datum, datum, int); int dbm_clearerr(DBM *); int dbm_error(DBM *); # 16 "../include/db-ndbm.h" 2 # 1 "../include/db.h" 1 # 39 "../include/db.h" # 1 "../include/db-config.h" 1 #pragma ident "%Z%%M% %I% %E% SMI" # 40 "../include/db.h" 2 # 48 "../include/db.h" typedef struct { void *data; size_t size; } DBT; # 66 "../include/db.h" typedef enum { DB_BTREE, DB_HASH, DB_RECNO } DBTYPE; # 102 "../include/db.h" typedef struct __db { DBTYPE type; int (*close) (struct __db *); int (*del) (const struct __db *, const DBT *, u_int); int (*get) (const struct __db *, const DBT *, DBT *, u_int); int (*put) (const struct __db *, DBT *, const DBT *, u_int); int (*seq) (const struct __db *, DBT *, DBT *, u_int); int (*sync) (const struct __db *, u_int); void *internal; int (*fd) (const struct __db *); } DB; typedef struct { u_long flags; u_int cachesize; int maxkeypage; int minkeypage; u_int psize; int (*compare) (const DBT *, const DBT *); size_t (*prefix) (const DBT *, const DBT *); int lorder; } BTREEINFO; typedef struct { u_int bsize; u_int ffactor; u_int nelem; u_int cachesize; unsigned int (*hash) (const void *, size_t); int lorder; } HASHINFO; typedef struct { u_long flags; u_int cachesize; u_int psize; int lorder; size_t reclen; u_char bval; char *bfname; } RECNOINFO; # 170 "../include/db.h" DB *kdb2_dbopen (const char *, int, int, DBTYPE, const void *); int kdb2_bt_rseq(const DB*, DBT *, DBT *, void **, u_int); # 17 "../include/db-ndbm.h" 2 # 567 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 581 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/string.h" 1 # 33 "/code/illumos-gate/proto/root_i386/usr/include/string.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/iso/string_iso.h" 1 # 75 "/code/illumos-gate/proto/root_i386/usr/include/iso/string_iso.h" extern int memcmp(const void *, const void *, size_t); extern void *memcpy(void *, const void *, size_t); extern void *memmove(void *, const void *, size_t); extern void *memset(void *, int, size_t); extern char *strcat(char *, const char *); extern int strcmp(const char *, const char *); extern char *strcpy(char *, const char *); extern int strcoll(const char *, const char *); extern size_t strcspn(const char *, const char *); extern char *strerror(int); extern size_t strlen(const char *); extern char *strncat(char *, const char *, size_t); extern int strncmp(const char *, const char *, size_t); extern char *strncpy(char *, const char *, size_t); extern size_t strspn(const char *, const char *); extern char *strtok(char *, const char *); extern size_t strxfrm(char *, const char *, size_t); # 145 "/code/illumos-gate/proto/root_i386/usr/include/iso/string_iso.h" extern void *memchr(const void *, int, size_t); extern char *strchr(const char *, int); extern char *strpbrk(const char *, const char *); extern char *strrchr(const char *, int); extern char *strstr(const char *, const char *); # 34 "/code/illumos-gate/proto/root_i386/usr/include/string.h" 2 # 72 "/code/illumos-gate/proto/root_i386/usr/include/string.h" extern int strerror_r(int, char *, size_t); extern char *strtok_r(char *, const char *, char **); extern void *memccpy(void *, const void *, int, size_t); extern char *stpcpy(char *, const char *); extern char *stpncpy(char *, const char *, size_t); extern char *strndup(const char *, size_t); extern size_t strnlen(const char *, size_t); extern char *strsignal(int); extern int strcoll_l(const char *, const char *, locale_t); extern size_t strxfrm_l(char *, const char *, size_t, locale_t); extern int strcasecmp_l(const char *, const char *, locale_t); extern int strncasecmp_l(const char *, const char *, size_t, locale_t); extern int uucopy(const void *, void *, size_t); extern int uucopystr(const void *, void *, size_t); extern int ffs(int); extern int ffsl(long); extern int ffsll(long long); extern int fls(int); extern int flsl(long); extern int flsll(long long); extern void *memmem(const void *, size_t, const void *, size_t); extern char *strcasestr(const char *, const char *); extern char *strnstr(const char *, const char *, size_t); extern size_t strlcpy(char *, const char *, size_t); extern size_t strlcat(char *, const char *, size_t); extern char *strsep(char **stringp, const char *delim); extern char *strchrnul(const char *, int); extern char *strcasestr_l(const char *, const char *, locale_t); extern int strcasecmp(const char *, const char *); extern int strncasecmp(const char *, const char *, size_t); extern char *strdup(const char *); # 146 "/code/illumos-gate/proto/root_i386/usr/include/string.h" extern void *__builtin_alloca(size_t); # 582 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 625 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/stat.h" 1 # 242 "/code/illumos-gate/proto/root_i386/usr/include/sys/stat.h" struct stat { dev_t st_dev; long st_pad1[3]; ino_t st_ino; mode_t st_mode; nlink_t st_nlink; uid_t st_uid; gid_t st_gid; dev_t st_rdev; long st_pad2[2]; off_t st_size; long st_pad3; timestruc_t st_atim; timestruc_t st_mtim; timestruc_t st_ctim; blksize_t st_blksize; blkcnt_t st_blocks; char st_fstype[16]; long st_pad4[8]; }; # 303 "/code/illumos-gate/proto/root_i386/usr/include/sys/stat.h" struct stat64 { dev_t st_dev; long st_pad1[3]; ino64_t st_ino; mode_t st_mode; nlink_t st_nlink; uid_t st_uid; gid_t st_gid; dev_t st_rdev; long st_pad2[2]; off64_t st_size; timestruc_t st_atim; timestruc_t st_mtim; timestruc_t st_ctim; blksize_t st_blksize; blkcnt64_t st_blocks; char st_fstype[16]; long st_pad4[8]; }; # 486 "/code/illumos-gate/proto/root_i386/usr/include/sys/stat.h" extern int fchmod(int, mode_t); extern int chmod(const char *, mode_t); extern int mkdir(const char *, mode_t); extern int mkfifo(const char *, mode_t); extern mode_t umask(mode_t); extern int fstat64(int, struct stat64 *); extern int stat64(const char *, struct stat64 *); extern int lstat64(const char *, struct stat64 *); extern int fstatat64(int, const char *, struct stat64 *, int); extern int mkdirat(int, const char *, mode_t); extern int mkfifoat(int, const char *, mode_t); extern int mknodat(int, const char *, mode_t, dev_t); extern int fchmodat(int, const char *, mode_t, int); extern int futimens(int, const struct timespec[2]); extern int utimensat(int, const char *, const struct timespec[2], int); # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/stat_impl.h" 1 # 45 "/code/illumos-gate/proto/root_i386/usr/include/sys/stat_impl.h" extern int fstat(int, struct stat *); extern int stat(const char *, struct stat *); extern int fstatat(int, const char *, struct stat *, int); extern int lstat(const char *, struct stat *); extern int mknod(const char *, mode_t, dev_t); # 84 "/code/illumos-gate/proto/root_i386/usr/include/sys/stat_impl.h" extern int _fxstat(const int, int, struct stat *); extern int _xstat(const int, const char *, struct stat *); extern int _lxstat(const int, const char *, struct stat *); extern int _xmknod(const int, const char *, mode_t, dev_t); # 518 "/code/illumos-gate/proto/root_i386/usr/include/sys/stat.h" 2 # 626 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 635 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/file.h" 1 # 60 "/code/illumos-gate/proto/root_i386/usr/include/sys/file.h" typedef struct file { kmutex_t f_tlock; ushort_t f_flag; ushort_t f_flag2; struct vnode *f_vnode; offset_t f_offset; struct cred *f_cred; struct f_audit_data *f_audit_data; int f_count; } file_t; typedef struct fpollinfo { struct _kthread *fp_thread; struct fpollinfo *fp_next; } fpollinfo_t; # 636 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/fcntl.h" 1 # 40 "/code/illumos-gate/proto/root_i386/usr/include/fcntl.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/sys/fcntl.h" 1 # 205 "/code/illumos-gate/proto/root_i386/usr/include/sys/fcntl.h" typedef struct flock { short l_type; short l_whence; off_t l_start; off_t l_len; int l_sysid; pid_t l_pid; long l_pad[4]; } flock_t; # 235 "/code/illumos-gate/proto/root_i386/usr/include/sys/fcntl.h" typedef struct flock64 { short l_type; short l_whence; off64_t l_start; off64_t l_len; int l_sysid; pid_t l_pid; long l_pad[4]; } flock64_t; # 321 "/code/illumos-gate/proto/root_i386/usr/include/sys/fcntl.h" typedef struct fshare { short f_access; short f_deny; int f_id; } fshare_t; # 41 "/code/illumos-gate/proto/root_i386/usr/include/fcntl.h" 2 # 131 "/code/illumos-gate/proto/root_i386/usr/include/fcntl.h" extern int fcntl(int, int, ...); extern int open(const char *, int, ...); extern int creat(const char *, mode_t); extern int posix_fadvise(int, off_t, off_t, int); extern int posix_fallocate(int, off_t, off_t); extern int openat(int, const char *, int, ...); extern int attropen(const char *, const char *, int, ...); extern int directio(int, int); extern int open64(const char *, int, ...); extern int creat64(const char *, mode_t); extern int posix_fadvise64(int, off64_t, off64_t, int); extern int posix_fallocate64(int, off64_t, off64_t); extern int openat64(int, const char *, int, ...); extern int attropen64(const char *, const char *, int, ...); # 642 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 657 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" 1 # 82 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdio_iso.h" 1 # 53 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdio_iso.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/stdio_tag.h" 1 # 30 "/code/illumos-gate/proto/root_i386/usr/include/stdio_tag.h" #pragma ident "%Z%%M% %I% %E% SMI" # 42 "/code/illumos-gate/proto/root_i386/usr/include/stdio_tag.h" typedef struct __FILE __FILE; # 54 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdio_iso.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/stdio_impl.h" 1 # 30 "/code/illumos-gate/proto/root_i386/usr/include/stdio_impl.h" #pragma ident "%Z%%M% %I% %E% SMI" # 50 "/code/illumos-gate/proto/root_i386/usr/include/stdio_impl.h" struct __FILE { int _cnt; unsigned char *_ptr; unsigned char *_base; unsigned char _flag; unsigned char _magic; unsigned __orientation:2; unsigned __ionolock:1; unsigned __seekable:1; unsigned __extendedfd:1; unsigned __xf_nocheck:1; unsigned __filler:10; }; # 55 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdio_iso.h" 2 # 75 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdio_iso.h" typedef long long __longlong_t; # 91 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdio_iso.h" typedef __FILE FILE; # 104 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdio_iso.h" typedef long fpos_t; # 162 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdio_iso.h" extern __FILE __iob[60]; # 197 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdio_iso.h" extern int remove(const char *); extern int rename(const char *, const char *); extern FILE *tmpfile(void); extern char *tmpnam(char *); extern int fclose(FILE *); extern int fflush(FILE *); extern FILE *fopen(const char *, const char *); extern FILE *freopen(const char *, const char *, FILE *); extern void setbuf(FILE *, char *); extern int setvbuf(FILE *, char *, int, size_t); extern int fprintf(FILE *, const char *, ...); extern int fscanf(FILE *, const char *, ...); extern int printf(const char *, ...); extern int scanf(const char *, ...); extern int sprintf(char *, const char *, ...); extern int sscanf(const char *, const char *, ...); extern int vfprintf(FILE *, const char *, __va_list); extern int vprintf(const char *, __va_list); extern int vsprintf(char *, const char *, __va_list); extern int fgetc(FILE *); extern char *fgets(char *, int, FILE *); extern int fputc(int, FILE *); extern int fputs(const char *, FILE *); extern int getc(FILE *); extern int putc(int, FILE *); extern int getchar(void); extern int putchar(int); extern char *gets(char *); extern int puts(const char *); extern int ungetc(int, FILE *); extern size_t fread(void *, size_t, size_t, FILE *); extern size_t fwrite(const void *, size_t, size_t, FILE *); extern int fgetpos(FILE *, fpos_t *); extern int fsetpos(FILE *, const fpos_t *); extern int fseek(FILE *, long, int); extern long ftell(FILE *); extern void rewind(FILE *); extern void clearerr(FILE *); extern int feof(FILE *); extern int ferror(FILE *); extern void perror(const char *); extern int __filbuf(FILE *); extern int __flsbuf(int, FILE *); # 83 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" 2 # 151 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" # 1 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdio_c99.h" 1 # 74 "/code/illumos-gate/proto/root_i386/usr/include/iso/stdio_c99.h" extern int vfscanf(FILE *, const char *, __va_list); extern int vscanf(const char *, __va_list); extern int vsscanf(const char *, const char *, __va_list); extern int snprintf(char *, size_t, const char *, ...); extern int vsnprintf(char *, size_t, const char *, __va_list); # 152 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" 2 # 179 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" typedef __longlong_t fpos64_t; # 213 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" extern unsigned char _sibuf[], _sobuf[]; # 237 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" extern unsigned char *_bufendtab[]; extern FILE *_lastbuf; # 268 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" extern char *tmpnam_r(char *); extern int fcloseall(void); extern void setbuffer(FILE *, char *, size_t); extern int setlinebuf(FILE *); extern int asprintf(char **, const char *, ...); extern int vasprintf(char **, const char *, __va_list); extern ssize_t getdelim(char **, size_t *, int, FILE *); extern ssize_t getline(char **, size_t *, FILE *); # 297 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" extern FILE *fdopen(int, const char *); extern char *ctermid(char *); extern int fileno(FILE *); # 308 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" extern void flockfile(FILE *); extern int ftrylockfile(FILE *); extern void funlockfile(FILE *); extern int getc_unlocked(FILE *); extern int getchar_unlocked(void); extern int putc_unlocked(int, FILE *); extern int putchar_unlocked(int); # 323 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" extern FILE *popen(const char *, const char *); extern char *tempnam(const char *, const char *); extern int pclose(FILE *); extern int getsubopt(char **, char *const *, char **); extern char *cuserid(char *); extern int getopt(int, char *const *, const char *); extern char *optarg; extern int optind, opterr, optopt; extern int getw(FILE *); extern int putw(int, FILE *); # 346 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" extern int fseeko(FILE *, off_t, int); extern off_t ftello(FILE *); # 356 "/code/illumos-gate/proto/root_i386/usr/include/stdio.h" extern FILE *fopen64(const char *, const char *); extern FILE *freopen64(const char *, const char *, FILE *); extern FILE *tmpfile64(void); extern int fgetpos64(FILE *, fpos64_t *); extern int fsetpos64(FILE *, const fpos64_t *); extern int fseeko64(FILE *, off64_t, int); extern off64_t ftello64(FILE *); # 658 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 struct addrlist; struct sendto_callback_info; krb5_error_code krb5_lock_file (krb5_context, int, int); krb5_error_code krb5_unlock_file (krb5_context, int); krb5_error_code krb5_sendto_kdc (krb5_context, const krb5_data *, const krb5_data *, krb5_data *, int *, int); krb5_error_code krb5_sendto_kdc2 (krb5_context, const krb5_data *, const krb5_data *, krb5_data *, int *, int, char **); krb5_error_code krb5_get_krbhst (krb5_context, const krb5_data *, char *** ); krb5_error_code krb5_free_krbhst (krb5_context, char * const * ); krb5_error_code krb5_create_secure_file (krb5_context, const char * pathname); int krb5_net_read (krb5_context, int , char *, int); int krb5_net_write (krb5_context, int , const char *, int); krb5_error_code krb5_gen_replay_name (krb5_context, const krb5_address *, const char *, char **); krb5_error_code krb5_sync_disk_file (krb5_context, FILE *fp); krb5_error_code krb5_open_pkcs11_session(CK_SESSION_HANDLE *); krb5_error_code krb5_read_message (krb5_context, krb5_pointer, krb5_data *); krb5_error_code krb5_write_message (krb5_context, krb5_pointer, krb5_data *); krb5_error_code krb5int_sendto (krb5_context context, const krb5_data *message, const struct addrlist *addrs, struct sendto_callback_info* callback_info, krb5_data *reply, struct sockaddr *localaddr, socklen_t *localaddrlen, struct sockaddr *remoteaddr, socklen_t *remoteaddrlen, int *addr_used, int (*msg_handler)(krb5_context, const krb5_data *, void *), void *msg_handler_data); krb5_error_code krb5int_get_fq_local_hostname (char *, size_t); krb5_error_code krb5_set_debugging_time (krb5_context, krb5_timestamp, krb5_int32); krb5_error_code krb5_use_natural_time (krb5_context); krb5_error_code krb5_set_time_offsets (krb5_context, krb5_timestamp, krb5_int32); krb5_error_code krb5int_check_clockskew(krb5_context, krb5_timestamp); krb5_error_code krb5int_lookup_host(int , const char *, char **); krb5_error_code krb5int_domain_get_realm(krb5_context, const char *, char **); krb5_error_code krb5int_fqdn_get_realm(krb5_context, const char *, char **); krb5_error_code krb5int_init_context_kdc(krb5_context *); krb5_error_code krb5_os_init_context (krb5_context, krb5_boolean); void krb5_os_free_context (krb5_context); krb5_error_code os_get_default_config_files (profile_filespec_t **pfiles, krb5_boolean secure); krb5_error_code krb5_os_hostaddr (krb5_context, const char *, krb5_address ***); struct addrlist { struct { struct undefined_addrinfo *ai; void (*freefn)(void *); void *data; } *addrs; int naddrs; int space; }; extern void krb5int_free_addrlist (struct addrlist *); extern int krb5int_grow_addrlist (struct addrlist *, int); extern int krb5int_add_host_to_list (struct addrlist *, const char *, int, int, int, int); # 1 "../include/locate_plugin.h" 1 # 35 "../include/locate_plugin.h" enum locate_service_type { locate_service_kdc = 1, locate_service_master_kdc, locate_service_kadmin, locate_service_krb524, locate_service_kpasswd }; typedef struct krb5plugin_service_locate_ftable { int minor_version; krb5_error_code (*init)(krb5_context, void **); void (*fini)(void *); krb5_error_code (*lookup)(void *, enum locate_service_type svc, const char *realm, int socktype, int family, int (*cbfunc)(void *,int,struct sockaddr *), void *cbdata); } krb5plugin_service_locate_ftable; # 770 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 krb5_error_code krb5int_locate_server (krb5_context, const krb5_data *realm, struct addrlist *, enum locate_service_type svc, int sockettype, int family); struct krb5_enc_provider { size_t block_size, keybytes, keylength; krb5_error_code (*encrypt) ( krb5_context context, const krb5_keyblock *key, const krb5_data *ivec, const krb5_data *input, krb5_data *output); krb5_error_code (*decrypt) ( krb5_context context, const krb5_keyblock *key, const krb5_data *ivec, const krb5_data *input, krb5_data *output); krb5_error_code (*make_key) (krb5_context, const krb5_data *, krb5_keyblock *); krb5_error_code (*init_state) (krb5_context, const krb5_keyblock *, krb5_keyusage, krb5_data *); krb5_error_code (*free_state) (krb5_context, krb5_data *); }; struct krb5_hash_provider { size_t hashsize, blocksize; krb5_error_code (*hash) (krb5_context context, unsigned int icount, const krb5_data *input, krb5_data *output); }; struct krb5_keyhash_provider { size_t hashsize; krb5_error_code (*hash) ( krb5_context context, const krb5_keyblock *key, krb5_keyusage keyusage, const krb5_data *ivec, const krb5_data *input, krb5_data *output); krb5_error_code (*verify) ( krb5_context context, const krb5_keyblock *key, krb5_keyusage keyusage, const krb5_data *ivec, const krb5_data *input, const krb5_data *hash, krb5_boolean *valid); }; typedef void (*krb5_encrypt_length_func) (const struct krb5_enc_provider *enc, const struct krb5_hash_provider *hash, size_t inputlen, size_t *length); typedef krb5_error_code (*krb5_crypt_func) ( krb5_context context, const struct krb5_enc_provider *enc, const struct krb5_hash_provider *hash, const krb5_keyblock *key, krb5_keyusage usage, const krb5_data *ivec, const krb5_data *input, krb5_data *output); typedef krb5_error_code (*krb5_str2key_func) ( krb5_context context, const struct krb5_enc_provider *enc, const krb5_data *string, const krb5_data *salt, const krb5_data *params, krb5_keyblock *key); typedef krb5_error_code (*krb5_prf_func)( const struct krb5_enc_provider *enc, const struct krb5_hash_provider *hash, const krb5_keyblock *key, const krb5_data *in, krb5_data *out); struct krb5_keytypes { krb5_enctype etype; char *in_string; char *out_string; const struct krb5_enc_provider *enc; const struct krb5_hash_provider *hash; krb5_encrypt_length_func encrypt_len; krb5_crypt_func encrypt; krb5_crypt_func decrypt; krb5_cksumtype required_ctype; krb5_str2key_func str2key; }; struct krb5_cksumtypes { krb5_cksumtype ctype; unsigned int flags; char *in_string; char *out_string; krb5_enctype keyed_etype; const struct krb5_keyhash_provider *keyhash; const struct krb5_hash_provider *hash; unsigned int trunc_size; }; # 918 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" void krb5_nfold (unsigned int inbits, const unsigned char *in, unsigned int outbits, unsigned char *out); krb5_error_code krb5int_pbkdf2_hmac_sha1 (krb5_context, const krb5_data *, unsigned long, krb5_enctype, const krb5_data *, const krb5_data *); # 948 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" krb5_error_code krb5int_des_init_state ( krb5_context, const krb5_keyblock *, krb5_keyusage, krb5_data *); krb5_error_code krb5int_c_mandatory_cksumtype( krb5_context, krb5_enctype, krb5_cksumtype *); krb5_error_code krb5int_default_free_state (krb5_context, krb5_data *); krb5_error_code krb5int_c_combine_keys (krb5_context context, krb5_keyblock *key1, krb5_keyblock *key2, krb5_keyblock *outkey); # 986 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" krb5_error_code krb5_hmac (krb5_context, const struct krb5_hash_provider *, const krb5_keyblock *, const unsigned int, const krb5_data *, krb5_data *); # 1000 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" extern const struct krb5_enc_provider krb5int_enc_arcfour; extern const struct krb5_hash_provider krb5int_hash_md5; krb5_error_code krb5_crypto_us_timeofday (krb5_int32 *, krb5_int32 *); time_t krb5int_gmt_mktime (struct tm *); krb5_error_code krb5_encrypt_helper (krb5_context context, const krb5_keyblock *key, krb5_keyusage keyusage, const krb5_data *plain, krb5_enc_data *cipher); # 1034 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" typedef struct _krb5_os_context { krb5_magic magic; krb5_int32 time_offset; krb5_int32 usec_offset; krb5_int32 os_flags; char * default_ccname; } *krb5_os_context; # 1113 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" # 1 "../include/preauth_plugin.h" 1 # 46 "../include/preauth_plugin.h" struct _krb5_db_entry_new; struct _krb5_key_data; struct _krb5_preauth_client_rock; # 111 "../include/preauth_plugin.h" typedef krb5_error_code (*preauth_get_as_key_proc)(krb5_context, krb5_principal, krb5_enctype, krb5_prompter_fct, void *prompter_data, krb5_data *salt, krb5_data *s2kparams, krb5_keyblock *as_key, void *gak_data); enum krb5plugin_preauth_client_request_type { krb5plugin_preauth_client_get_etype = 1, krb5plugin_preauth_client_free_etype = 2 }; typedef krb5_error_code (*preauth_get_client_data_proc)(krb5_context, struct _krb5_preauth_client_rock *, krb5_int32 request_type, krb5_data **); typedef krb5_error_code (*preauth_client_plugin_init_proc)(krb5_context context, void **plugin_context); typedef void (*preauth_client_plugin_fini_proc)(krb5_context context, void *plugin_context); typedef int (*preauth_client_get_flags_proc)(krb5_context context, krb5_preauthtype pa_type); typedef void (*preauth_client_request_init_proc)(krb5_context context, void *plugin_context, void **request_context); typedef void (*preauth_client_request_fini_proc)(krb5_context context, void *plugin_context, void *request_context); # 181 "../include/preauth_plugin.h" typedef krb5_error_code (*preauth_client_process_proc)(krb5_context context, void *plugin_context, void *request_context, krb5_get_init_creds_opt *opt, preauth_get_client_data_proc get_data_proc, struct _krb5_preauth_client_rock *rock, krb5_kdc_req *request, krb5_data *encoded_request_body, krb5_data *encoded_previous_request, krb5_pa_data *pa_data, krb5_prompter_fct prompter, void *prompter_data, preauth_get_as_key_proc gak_fct, void *gak_data, krb5_data *salt, krb5_data *s2kparams, krb5_keyblock *as_key, krb5_pa_data ***out_pa_data); typedef krb5_error_code (*preauth_client_tryagain_proc)(krb5_context context, void *plugin_context, void *request_context, krb5_get_init_creds_opt *opt, preauth_get_client_data_proc get_data_proc, struct _krb5_preauth_client_rock *rock, krb5_kdc_req *request, krb5_data *encoded_request_body, krb5_data *encoded_previous_request, krb5_pa_data *in_pa_data, krb5_error *error, krb5_prompter_fct prompter, void *prompter_data, preauth_get_as_key_proc gak_fct, void *gak_data, krb5_data *salt, krb5_data *s2kparams, krb5_keyblock *as_key, krb5_pa_data ***out_pa_data); typedef krb5_error_code (*preauth_client_supply_gic_opts_proc)(krb5_context context, void *plugin_context, krb5_get_init_creds_opt *opt, const char *attr, const char *value); typedef struct krb5plugin_preauth_client_ftable_v1 { char *name; krb5_preauthtype *pa_type_list; krb5_enctype *enctype_list; preauth_client_plugin_init_proc init; preauth_client_plugin_fini_proc fini; preauth_client_get_flags_proc flags; preauth_client_request_init_proc request_init; preauth_client_request_fini_proc request_fini; # 286 "../include/preauth_plugin.h" preauth_client_process_proc process; preauth_client_tryagain_proc tryagain; preauth_client_supply_gic_opts_proc gic_opts; } krb5plugin_preauth_client_ftable_v1; # 315 "../include/preauth_plugin.h" enum krb5plugin_preauth_entry_request_type { krb5plugin_preauth_entry_request_certificate = 1, krb5plugin_preauth_entry_max_time_skew = 2, krb5plugin_preauth_keys = 3, krb5plugin_preauth_request_body = 4 }; typedef krb5_error_code (*preauth_get_entry_data_proc)(krb5_context, krb5_kdc_req *, struct _krb5_db_entry_new *, krb5_int32 request_type, krb5_data **); typedef krb5_error_code (*preauth_server_init_proc)(krb5_context context, void **plugin_context, const char** realmnames); typedef void (*preauth_server_fini_proc)(krb5_context context, void *plugin_context); # 357 "../include/preauth_plugin.h" typedef int (*preauth_server_flags_proc)(krb5_context context, krb5_preauthtype patype); # 368 "../include/preauth_plugin.h" typedef krb5_error_code (*preauth_server_edata_proc)(krb5_context, krb5_kdc_req *request, struct _krb5_db_entry_new *client, struct _krb5_db_entry_new *server, preauth_get_entry_data_proc, void *pa_module_context, krb5_pa_data *data); typedef krb5_error_code (*preauth_server_verify_proc)(krb5_context context, struct _krb5_db_entry_new *client, krb5_data *req_pkt, krb5_kdc_req *request, krb5_enc_tkt_part *enc_tkt_reply, krb5_pa_data *data, preauth_get_entry_data_proc, void *pa_module_context, void **pa_request_context, krb5_data **e_data, krb5_authdata ***authz_data); typedef krb5_error_code (*preauth_server_return_proc)(krb5_context context, krb5_pa_data * padata, struct _krb5_db_entry_new *client, krb5_data *req_pkt, krb5_kdc_req *request, krb5_kdc_rep *reply, struct _krb5_key_data *client_keys, krb5_keyblock *encrypting_key, krb5_pa_data **send_pa, preauth_get_entry_data_proc, void *pa_module_context, void **pa_request_context); typedef krb5_error_code (*preauth_server_free_reqcontext_proc)(krb5_context, void *pa_module_context, void **request_pa_context); # 429 "../include/preauth_plugin.h" typedef struct krb5plugin_preauth_server_ftable_v1 { char *name; krb5_preauthtype *pa_type_list; preauth_server_init_proc init_proc; preauth_server_fini_proc fini_proc; # 450 "../include/preauth_plugin.h" preauth_server_flags_proc flags_proc; # 460 "../include/preauth_plugin.h" preauth_server_edata_proc edata_proc; preauth_server_verify_proc verify_proc; preauth_server_return_proc return_proc; preauth_server_free_reqcontext_proc freepa_reqcontext_proc; } krb5plugin_preauth_server_ftable_v1; # 491 "../include/preauth_plugin.h" krb5_error_code krb5_get_init_creds_opt_get_pa (krb5_context context, krb5_get_init_creds_opt *opt, int *num_preauth_data, krb5_gic_opt_pa_data **preauth_data); void krb5_get_init_creds_opt_free_pa (krb5_context context, int num_preauth_data, krb5_gic_opt_pa_data *preauth_data); # 1114 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 typedef struct _krb5_preauth_client_rock { krb5_magic magic; krb5_kdc_rep *as_reply; } krb5_preauth_client_rock; typedef struct _krb5_preauth_context { int n_modules; struct _krb5_preauth_context_module { krb5_preauthtype pa_type; krb5_enctype *enctypes; void *plugin_context; preauth_client_plugin_fini_proc client_fini; struct krb5plugin_preauth_client_ftable_v1 *ftable; const char *name; int flags, use_count; preauth_client_process_proc client_process; preauth_client_tryagain_proc client_tryagain; preauth_client_supply_gic_opts_proc client_supply_gic_opts; preauth_client_request_init_proc client_req_init; preauth_client_request_fini_proc client_req_fini; void *request_context; void **request_context_pp; } *modules; } krb5_preauth_context; typedef struct _krb5_pa_enc_ts { krb5_timestamp patimestamp; krb5_int32 pausec; } krb5_pa_enc_ts; typedef struct _krb5_pa_for_user { krb5_principal user; krb5_checksum cksum; krb5_data auth_package; } krb5_pa_for_user; enum { KRB5_FAST_ARMOR_AP_REQUEST = 0x1 }; typedef struct _krb5_fast_armor { krb5_int32 armor_type; krb5_data armor_value; } krb5_fast_armor; typedef struct _krb5_fast_armored_req { krb5_magic magic; krb5_fast_armor *armor; krb5_checksum req_checksum; krb5_enc_data enc_part; } krb5_fast_armored_req; typedef struct _krb5_fast_req { krb5_magic magic; krb5_flags fast_options; krb5_kdc_req *req_body; } krb5_fast_req; typedef struct _krb5_fast_finished { krb5_timestamp timestamp; krb5_int32 usec; krb5_principal client; krb5_checksum ticket_checksum; } krb5_fast_finished; typedef struct _krb5_fast_response { krb5_magic magic; krb5_pa_data **padata; krb5_keyblock *strengthen_key; krb5_fast_finished *finished; krb5_int32 nonce; } krb5_fast_response; typedef krb5_error_code (*krb5_preauth_obtain_proc) (krb5_context, krb5_pa_data *, krb5_etype_info, krb5_keyblock *, krb5_error_code ( * )(krb5_context, const krb5_enctype, krb5_data *, krb5_const_pointer, krb5_keyblock **), krb5_const_pointer, krb5_creds *, krb5_kdc_req *, krb5_pa_data **); typedef krb5_error_code (*krb5_preauth_process_proc) (krb5_context, krb5_pa_data *, krb5_kdc_req *, krb5_kdc_rep *, krb5_error_code ( * )(krb5_context, const krb5_enctype, krb5_data *, krb5_const_pointer, krb5_keyblock **), krb5_const_pointer, krb5_error_code ( * )(krb5_context, const krb5_keyblock *, krb5_const_pointer, krb5_kdc_rep * ), krb5_keyblock **, krb5_creds *, krb5_int32 *, krb5_int32 *); typedef struct _krb5_preauth_ops { krb5_magic magic; int type; int flags; krb5_preauth_obtain_proc obtain; krb5_preauth_process_proc process; } krb5_preauth_ops; krb5_error_code krb5_obtain_padata (krb5_context, krb5_pa_data **, krb5_error_code ( * )(krb5_context, const krb5_enctype, krb5_data *, krb5_const_pointer, krb5_keyblock **), krb5_const_pointer, krb5_creds *, krb5_kdc_req *); krb5_error_code krb5_process_padata (krb5_context, krb5_kdc_req *, krb5_kdc_rep *, krb5_error_code ( * )(krb5_context, const krb5_enctype, krb5_data *, krb5_const_pointer, krb5_keyblock **), krb5_const_pointer, krb5_error_code ( * )(krb5_context, const krb5_keyblock *, krb5_const_pointer, krb5_kdc_rep * ), krb5_keyblock **, krb5_creds *, krb5_int32 *); void krb5_free_etype_info (krb5_context, krb5_etype_info); # 1338 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" typedef struct _krb5_gic_opt_private { int num_preauth_data; krb5_gic_opt_pa_data *preauth_data; } krb5_gic_opt_private; typedef struct _krb5_gic_opt_ext { krb5_flags flags; krb5_deltat tkt_life; krb5_deltat renew_life; int forwardable; int proxiable; krb5_enctype *etype_list; int etype_list_length; krb5_address **address_list; krb5_preauthtype *preauth_list; int preauth_list_length; krb5_data *salt; krb5_gic_opt_private *opt_private; } krb5_gic_opt_ext; krb5_error_code krb5int_gic_opt_to_opte(krb5_context context, krb5_get_init_creds_opt *opt, krb5_gic_opt_ext **opte, unsigned int force, const char *where); krb5_error_code krb5int_copy_data_contents (krb5_context, const krb5_data *, krb5_data *); typedef krb5_error_code (*krb5_gic_get_as_key_fct) (krb5_context, krb5_principal, krb5_enctype, krb5_prompter_fct, void *prompter_data, krb5_data *salt, krb5_data *s2kparams, krb5_keyblock *as_key, void *gak_data); krb5_error_code krb5_get_init_creds (krb5_context context, krb5_creds *creds, krb5_principal client, krb5_prompter_fct prompter, void *prompter_data, krb5_deltat start_time, char *in_tkt_service, krb5_gic_opt_ext *gic_options, krb5_gic_get_as_key_fct gak, void *gak_data, int *master, krb5_kdc_rep **as_reply); krb5_error_code krb5int_populate_gic_opt ( krb5_context, krb5_gic_opt_ext **, krb5_flags options, krb5_address * const *addrs, krb5_enctype *ktypes, krb5_preauthtype *pre_auth_types, krb5_creds *creds); krb5_error_code krb5_do_preauth (krb5_context context, krb5_kdc_req *request, krb5_data *encoded_request_body, krb5_data *encoded_previous_request, krb5_pa_data **in_padata, krb5_pa_data ***out_padata, krb5_data *salt, krb5_data *s2kparams, krb5_enctype *etype, krb5_keyblock *as_key, krb5_prompter_fct prompter, void *prompter_data, krb5_gic_get_as_key_fct gak_fct, void *gak_data, krb5_preauth_client_rock *get_data_rock, krb5_gic_opt_ext *opte); krb5_error_code krb5_do_preauth_tryagain (krb5_context context, krb5_kdc_req *request, krb5_data *encoded_request_body, krb5_data *encoded_previous_request, krb5_pa_data **in_padata, krb5_pa_data ***out_padata, krb5_error *err_reply, krb5_data *salt, krb5_data *s2kparams, krb5_enctype *etype, krb5_keyblock *as_key, krb5_prompter_fct prompter, void *prompter_data, krb5_gic_get_as_key_fct gak_fct, void *gak_data, krb5_preauth_client_rock *get_data_rock, krb5_gic_opt_ext *opte); void krb5_init_preauth_context (krb5_context); void krb5_free_preauth_context (krb5_context); void krb5_clear_preauth_context_use_counts (krb5_context); void krb5_preauth_prepare_request (krb5_context, krb5_gic_opt_ext *, krb5_kdc_req *); void krb5_preauth_request_context_init (krb5_context); void krb5_preauth_request_context_fini (krb5_context); void krb5_free_sam_challenge (krb5_context, krb5_sam_challenge * ); void krb5_free_sam_challenge_2 (krb5_context, krb5_sam_challenge_2 * ); void krb5_free_sam_challenge_2_body (krb5_context, krb5_sam_challenge_2_body *); void krb5_free_sam_response (krb5_context, krb5_sam_response * ); void krb5_free_sam_response_2 (krb5_context, krb5_sam_response_2 * ); void krb5_free_predicted_sam_response (krb5_context, krb5_predicted_sam_response * ); void krb5_free_enc_sam_response_enc (krb5_context, krb5_enc_sam_response_enc * ); void krb5_free_enc_sam_response_enc_2 (krb5_context, krb5_enc_sam_response_enc_2 * ); void krb5_free_sam_challenge_contents (krb5_context, krb5_sam_challenge * ); void krb5_free_sam_challenge_2_contents (krb5_context, krb5_sam_challenge_2 * ); void krb5_free_sam_challenge_2_body_contents (krb5_context, krb5_sam_challenge_2_body * ); void krb5_free_sam_response_contents (krb5_context, krb5_sam_response * ); void krb5_free_sam_response_2_contents (krb5_context, krb5_sam_response_2 *); void krb5_free_predicted_sam_response_contents (krb5_context, krb5_predicted_sam_response * ); void krb5_free_enc_sam_response_enc_contents (krb5_context, krb5_enc_sam_response_enc * ); void krb5_free_enc_sam_response_enc_2_contents (krb5_context, krb5_enc_sam_response_enc_2 * ); void krb5_free_pa_enc_ts (krb5_context, krb5_pa_enc_ts *); # 1 "../include/krb5/k5-plugin.h" 1 # 51 "../include/krb5/k5-plugin.h" #pragma ident "%Z%%M% %I% %E% SMI" # 1 "../include/autoconf.h" 1 # 57 "../include/krb5/k5-plugin.h" 2 # 68 "../include/krb5/k5-plugin.h" # 1 "../include/krb5/k5-err.h" 1 # 33 "../include/krb5/k5-err.h" #pragma ident "%Z%%M% %I% %E% SMI" # 49 "../include/krb5/k5-err.h" struct errinfo { long code; const char *msg; char scratch_buf[1024]; }; void krb5int_set_error (struct errinfo *ep, long code, const char *fmt, ...); void krb5int_vset_error (struct errinfo *ep, long code, const char *fmt, va_list args); const char * krb5int_get_error (struct errinfo *ep, long code); void krb5int_free_error (struct errinfo *ep, const char *msg); void krb5int_clear_error (struct errinfo *ep); void krb5int_set_error_info_callout_fn (const char *( *f)(long)); # 69 "../include/krb5/k5-plugin.h" 2 struct plugin_file_handle; struct plugin_dir_handle { struct plugin_file_handle **files; }; long krb5int_open_plugin (const char *, struct plugin_file_handle **, struct errinfo *); void krb5int_close_plugin (struct plugin_file_handle *); long krb5int_get_plugin_data (struct plugin_file_handle *, const char *, void **, struct errinfo *); long krb5int_get_plugin_func (struct plugin_file_handle *, const char *, void (**)(), struct errinfo *); long krb5int_open_plugin_dirs (const char * const *, const char * const *, struct plugin_dir_handle *, struct errinfo *); void krb5int_close_plugin_dirs (struct plugin_dir_handle *); long krb5int_get_plugin_dir_data (struct plugin_dir_handle *, const char *, void ***, struct errinfo *); void krb5int_free_plugin_dir_data (void **); long krb5int_get_plugin_dir_func (struct plugin_dir_handle *, const char *, void (***)(void), struct errinfo *); void krb5int_free_plugin_dir_func (void (**)(void)); # 1485 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 1493 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" # 1 "../include/profile.h" 1 # 1494 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 1 "/code/illumos-gate/proto/root_i386/usr/include/strings.h" 1 # 43 "/code/illumos-gate/proto/root_i386/usr/include/strings.h" extern int bcmp(const void *, const void *, size_t); extern void bcopy(const void *, void *, size_t); extern void bzero(void *, size_t); extern char *index(const char *, int); extern char *rindex(const char *, int); # 1495 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" 2 # 1505 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" typedef struct _arcfour_ctx { CK_SESSION_HANDLE eSession; CK_SESSION_HANDLE dSession; CK_OBJECT_HANDLE eKey; CK_OBJECT_HANDLE dKey; uchar_t initialized; }arcfour_ctx_rec; struct _krb5_context { krb5_magic magic; krb5_enctype *in_tkt_ktypes; unsigned int in_tkt_ktype_count; krb5_enctype *tgs_ktypes; unsigned int tgs_ktype_count; # 1530 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" struct _krb5_os_context os_context[1]; char *default_realm; int ser_ctx_count; krb5_boolean profile_secure; void *ser_ctx; profile_t profile; void *db_context; void *kdblog_context; krb5_deltat clockskew; krb5_cksumtype kdc_req_sumtype; krb5_cksumtype default_ap_req_sumtype; krb5_cksumtype default_safe_sumtype; krb5_flags kdc_default_options; krb5_flags library_options; int fcc_default_format; int scc_default_format; krb5_prompt_type *prompt_types; int udp_pref_limit; krb5_enctype *conf_tgs_ktypes; int conf_tgs_ktypes_count; krb5_boolean use_conf_ktypes; krb5_boolean profile_in_memory; struct plugin_dir_handle libkrb5_plugins; struct krb5plugin_service_locate_ftable *vtbl; void (**locate_fptrs)(void); pid_t pid; CK_SESSION_HANDLE hSession; int cryptoki_initialized; arcfour_ctx_rec arcfour_ctx; struct plugin_dir_handle preauth_plugins; krb5_preauth_context *preauth_context; struct errinfo err; }; extern pid_t __krb5_current_pid; CK_SESSION_HANDLE krb5_reinit_ef_handle(krb5_context); # 1643 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" int init_derived_keydata(krb5_context, const struct krb5_enc_provider *, krb5_keyblock *, krb5_keyusage, krb5_keyblock **, krb5_keyblock **); krb5_error_code add_derived_key(krb5_keyblock *, krb5_keyusage, uchar_t, krb5_keyblock *); krb5_keyblock *find_derived_key(krb5_keyusage, uchar_t, krb5_keyblock *); krb5_keyblock *krb5_create_derived_keyblock(int); # 1675 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" typedef struct krb5_mech_2_pkcs { uchar_t flags; CK_MECHANISM_TYPE enc_algo; CK_MECHANISM_TYPE hash_algo; CK_MECHANISM_TYPE str2key_algo; } KRB5_MECH_TO_PKCS; extern CK_RV get_algo(krb5_enctype etype, KRB5_MECH_TO_PKCS * algos); extern CK_RV get_key_type (krb5_enctype etype, CK_KEY_TYPE * keyType); extern krb5_error_code slot_supports_krb5 (CK_SLOT_ID_PTR slotid); krb5_error_code init_key_uef(CK_SESSION_HANDLE, krb5_keyblock *); krb5_error_code k5_ef_hash(krb5_context, CK_MECHANISM *, unsigned int, const krb5_data *, krb5_data *); krb5_error_code k5_ef_mac(krb5_context context, krb5_keyblock *key, krb5_data *ivec, const krb5_data *input, krb5_data *output); krb5_error_code derive_3des_keys(krb5_context, struct krb5_enc_provider *, krb5_keyblock *, krb5_keyusage, krb5_keyblock *, krb5_keyblock *); # 1713 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" typedef struct _krb5_safe { krb5_magic magic; krb5_data user_data; krb5_timestamp timestamp; krb5_int32 usec; krb5_ui_4 seq_number; krb5_address *s_address; krb5_address *r_address; krb5_checksum *checksum; } krb5_safe; typedef struct _krb5_priv { krb5_magic magic; krb5_enc_data enc_part; } krb5_priv; typedef struct _krb5_priv_enc_part { krb5_magic magic; krb5_data user_data; krb5_timestamp timestamp; krb5_int32 usec; krb5_ui_4 seq_number; krb5_address *s_address; krb5_address *r_address; } krb5_priv_enc_part; void krb5_free_safe (krb5_context, krb5_safe * ); void krb5_free_priv (krb5_context, krb5_priv * ); void krb5_free_priv_enc_part (krb5_context, krb5_priv_enc_part * ); # 1841 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" krb5_error_code encode_krb5_authenticator (const krb5_authenticator *rep, krb5_data **code); krb5_error_code encode_krb5_ticket (const krb5_ticket *rep, krb5_data **code); krb5_error_code encode_krb5_encryption_key (const krb5_keyblock *rep, krb5_data **code); krb5_error_code encode_krb5_enc_tkt_part (const krb5_enc_tkt_part *rep, krb5_data **code); krb5_error_code encode_krb5_enc_kdc_rep_part (const krb5_enc_kdc_rep_part *rep, krb5_data **code); krb5_error_code encode_krb5_as_rep (const krb5_kdc_rep *rep, krb5_data **code); krb5_error_code encode_krb5_tgs_rep (const krb5_kdc_rep *rep, krb5_data **code); krb5_error_code encode_krb5_ap_req (const krb5_ap_req *rep, krb5_data **code); krb5_error_code encode_krb5_ap_rep (const krb5_ap_rep *rep, krb5_data **code); krb5_error_code encode_krb5_ap_rep_enc_part (const krb5_ap_rep_enc_part *rep, krb5_data **code); krb5_error_code encode_krb5_as_req (const krb5_kdc_req *rep, krb5_data **code); krb5_error_code encode_krb5_tgs_req (const krb5_kdc_req *rep, krb5_data **code); krb5_error_code encode_krb5_kdc_req_body (const krb5_kdc_req *rep, krb5_data **code); krb5_error_code encode_krb5_safe (const krb5_safe *rep, krb5_data **code); struct krb5_safe_with_body { krb5_safe *safe; krb5_data *body; }; krb5_error_code encode_krb5_safe_with_body (const struct krb5_safe_with_body *rep, krb5_data **code); krb5_error_code encode_krb5_priv (const krb5_priv *rep, krb5_data **code); krb5_error_code encode_krb5_enc_priv_part (const krb5_priv_enc_part *rep, krb5_data **code); krb5_error_code encode_krb5_cred (const krb5_cred *rep, krb5_data **code); krb5_error_code encode_krb5_enc_cred_part (const krb5_cred_enc_part *rep, krb5_data **code); krb5_error_code encode_krb5_error (const krb5_error *rep, krb5_data **code); krb5_error_code encode_krb5_authdata (krb5_authdata *const *rep, krb5_data **code); krb5_error_code encode_krb5_authdata_elt (const krb5_authdata *rep, krb5_data **code); krb5_error_code encode_krb5_pwd_sequence (const passwd_phrase_element *rep, krb5_data **code); krb5_error_code encode_krb5_pwd_data (const krb5_pwd_data *rep, krb5_data **code); krb5_error_code encode_krb5_padata_sequence (krb5_pa_data *const *rep, krb5_data **code); krb5_error_code encode_krb5_alt_method (const krb5_alt_method *, krb5_data **code); krb5_error_code encode_krb5_etype_info (krb5_etype_info_entry *const *, krb5_data **code); krb5_error_code encode_krb5_etype_info2 (krb5_etype_info_entry *const *, krb5_data **code); krb5_error_code encode_krb5_enc_data (const krb5_enc_data *, krb5_data **); krb5_error_code encode_krb5_pa_enc_ts (const krb5_pa_enc_ts *, krb5_data **); krb5_error_code encode_krb5_sam_challenge (const krb5_sam_challenge * , krb5_data **); krb5_error_code encode_krb5_sam_key (const krb5_sam_key * , krb5_data **); krb5_error_code encode_krb5_enc_sam_response_enc (const krb5_enc_sam_response_enc * , krb5_data **); krb5_error_code encode_krb5_sam_response (const krb5_sam_response * , krb5_data **); krb5_error_code encode_krb5_sam_challenge_2 (const krb5_sam_challenge_2 * , krb5_data **); krb5_error_code encode_krb5_sam_challenge_2_body (const krb5_sam_challenge_2_body * , krb5_data **); krb5_error_code encode_krb5_enc_sam_response_enc_2 (const krb5_enc_sam_response_enc_2 * , krb5_data **); krb5_error_code encode_krb5_sam_response_2 (const krb5_sam_response_2 * , krb5_data **); krb5_error_code encode_krb5_predicted_sam_response (const krb5_predicted_sam_response * , krb5_data **); struct krb5_setpw_req { krb5_principal target; krb5_data password; }; krb5_error_code encode_krb5_setpw_req (const struct krb5_setpw_req *rep, krb5_data **code); krb5_error_code decode_krb5_sam_challenge (const krb5_data *, krb5_sam_challenge **); krb5_error_code decode_krb5_enc_sam_key (const krb5_data *, krb5_sam_key **); krb5_error_code decode_krb5_enc_sam_response_enc (const krb5_data *, krb5_enc_sam_response_enc **); krb5_error_code decode_krb5_sam_response (const krb5_data *, krb5_sam_response **); krb5_error_code decode_krb5_predicted_sam_response (const krb5_data *, krb5_predicted_sam_response **); krb5_error_code decode_krb5_sam_challenge_2 (const krb5_data *, krb5_sam_challenge_2 **); krb5_error_code decode_krb5_sam_challenge_2_body (const krb5_data *, krb5_sam_challenge_2_body **); krb5_error_code decode_krb5_enc_sam_response_enc_2 (const krb5_data *, krb5_enc_sam_response_enc_2 **); krb5_error_code decode_krb5_sam_response_2 (const krb5_data *, krb5_sam_response_2 **); krb5_error_code krb5_validate_times (krb5_context, krb5_ticket_times *); # 2022 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" krb5_error_code decode_krb5_authenticator (const krb5_data *code, krb5_authenticator **rep); krb5_error_code decode_krb5_ticket (const krb5_data *code, krb5_ticket **rep); krb5_error_code decode_krb5_encryption_key (const krb5_data *output, krb5_keyblock **rep); krb5_error_code decode_krb5_enc_tkt_part (const krb5_data *output, krb5_enc_tkt_part **rep); krb5_error_code decode_krb5_enc_kdc_rep_part (const krb5_data *output, krb5_enc_kdc_rep_part **rep); krb5_error_code decode_krb5_as_rep (const krb5_data *output, krb5_kdc_rep **rep); krb5_error_code decode_krb5_tgs_rep (const krb5_data *output, krb5_kdc_rep **rep); krb5_error_code decode_krb5_ap_req (const krb5_data *output, krb5_ap_req **rep); krb5_error_code decode_krb5_ap_rep (const krb5_data *output, krb5_ap_rep **rep); krb5_error_code decode_krb5_ap_rep_enc_part (const krb5_data *output, krb5_ap_rep_enc_part **rep); krb5_error_code decode_krb5_as_req (const krb5_data *output, krb5_kdc_req **rep); krb5_error_code decode_krb5_tgs_req (const krb5_data *output, krb5_kdc_req **rep); krb5_error_code decode_krb5_kdc_req_body (const krb5_data *output, krb5_kdc_req **rep); krb5_error_code decode_krb5_safe (const krb5_data *output, krb5_safe **rep); krb5_error_code decode_krb5_safe_with_body (const krb5_data *output, krb5_safe **rep, krb5_data *body); krb5_error_code decode_krb5_priv (const krb5_data *output, krb5_priv **rep); krb5_error_code decode_krb5_enc_priv_part (const krb5_data *output, krb5_priv_enc_part **rep); krb5_error_code decode_krb5_cred (const krb5_data *output, krb5_cred **rep); krb5_error_code decode_krb5_enc_cred_part (const krb5_data *output, krb5_cred_enc_part **rep); krb5_error_code decode_krb5_error (const krb5_data *output, krb5_error **rep); krb5_error_code decode_krb5_authdata (const krb5_data *output, krb5_authdata ***rep); krb5_error_code decode_krb5_pwd_sequence (const krb5_data *output, passwd_phrase_element **rep); krb5_error_code decode_krb5_pwd_data (const krb5_data *output, krb5_pwd_data **rep); krb5_error_code decode_krb5_padata_sequence (const krb5_data *output, krb5_pa_data ***rep); krb5_error_code decode_krb5_alt_method (const krb5_data *output, krb5_alt_method **rep); krb5_error_code decode_krb5_etype_info (const krb5_data *output, krb5_etype_info_entry ***rep); krb5_error_code decode_krb5_etype_info2 (const krb5_data *output, krb5_etype_info_entry ***rep); krb5_error_code decode_krb5_enc_data (const krb5_data *output, krb5_enc_data **rep); krb5_error_code decode_krb5_pa_enc_ts (const krb5_data *output, krb5_pa_enc_ts **rep); krb5_error_code decode_krb5_sam_key (const krb5_data *, krb5_sam_key **); struct _krb5_key_data; krb5_error_code krb5int_ldap_encode_sequence_of_keys (struct _krb5_key_data *key_data, krb5_int16 n_key_data, krb5_int32 mkvno, krb5_data **code); krb5_error_code krb5int_ldap_decode_sequence_of_keys (krb5_data *in, struct _krb5_key_data **out, krb5_int16 *n_key_data, int *mkvno); # 2138 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" krb5_error_code krb5_encrypt_tkt_part (krb5_context, const krb5_keyblock *, krb5_ticket * ); krb5_error_code krb5_encode_kdc_rep (krb5_context, const krb5_msgtype, const krb5_enc_kdc_rep_part *, int using_subkey, const krb5_keyblock *, krb5_kdc_rep *, krb5_data ** ); krb5_boolean krb5int_auth_con_chkseqnum (krb5_context ctx, krb5_auth_context ac, krb5_ui_4 in_seq); struct __krb5_serializer { krb5_magic odtype; krb5_error_code (*sizer) (krb5_context, krb5_pointer, size_t *); krb5_error_code (*externalizer) (krb5_context, krb5_pointer, krb5_octet **, size_t *); krb5_error_code (*internalizer) (krb5_context, krb5_pointer *, krb5_octet **, size_t *); }; typedef const struct __krb5_serializer * krb5_ser_handle; typedef struct __krb5_serializer krb5_ser_entry; krb5_ser_handle krb5_find_serializer (krb5_context, krb5_magic); krb5_error_code krb5_register_serializer (krb5_context, const krb5_ser_entry *); krb5_error_code krb5_size_opaque (krb5_context, krb5_magic, krb5_pointer, size_t *); krb5_error_code krb5_externalize_opaque (krb5_context, krb5_magic, krb5_pointer, krb5_octet **, size_t *); krb5_error_code krb5_internalize_opaque (krb5_context, krb5_magic, krb5_pointer *, krb5_octet **, size_t *); krb5_error_code krb5_externalize_data (krb5_context, krb5_pointer, krb5_octet **, size_t *); krb5_error_code krb5_ser_context_init (krb5_context); krb5_error_code krb5_ser_auth_context_init (krb5_context); krb5_error_code krb5_ser_keytab_init (krb5_context); krb5_error_code krb5_ser_ccache_init (krb5_context); krb5_error_code krb5_ser_rcache_init (krb5_context); krb5_error_code krb5_ser_pack_int32 (krb5_int32, krb5_octet **, size_t *); krb5_error_code krb5_ser_unpack_int32 (krb5_int32 *, krb5_octet **, size_t *); krb5_error_code krb5_ser_pack_int64 (krb5_int64, krb5_octet **, size_t *); krb5_error_code krb5_ser_unpack_int64 (krb5_int64 *, krb5_octet **, size_t *); krb5_error_code krb5_ser_pack_bytes (krb5_octet *, size_t, krb5_octet **, size_t *); krb5_error_code krb5_ser_unpack_bytes (krb5_octet *, size_t, krb5_octet **, size_t *); krb5_error_code krb5int_cc_default (krb5_context, krb5_ccache *); krb5_error_code krb5_cc_retrieve_cred_default (krb5_context, krb5_ccache, krb5_flags, krb5_creds *, krb5_creds *); krb5_boolean krb5_creds_compare (krb5_context in_context, krb5_creds *in_creds, krb5_creds *in_compare_creds); void krb5int_set_prompt_types (krb5_context, krb5_prompt_type *); krb5_error_code krb5int_generate_and_save_subkey (krb5_context, krb5_auth_context, krb5_keyblock * ); krb5_error_code krb5int_mk_chpw_req (krb5_context context, krb5_auth_context auth_context, krb5_data *ap_req, char *passwd, krb5_data *packet); krb5_error_code krb5int_rd_chpw_rep (krb5_context context, krb5_auth_context auth_context, krb5_data *packet, int *result_code, krb5_data *result_data); krb5_error_code krb5_chpw_result_code_string (krb5_context context, int result_code, char **result_codestr); krb5_error_code krb5int_mk_setpw_req (krb5_context context, krb5_auth_context auth_context, krb5_data *ap_req, krb5_principal targetprinc, char *passwd, krb5_data *packet); krb5_error_code krb5int_rd_setpw_rep (krb5_context context, krb5_auth_context auth_context, krb5_data *packet, int *result_code, krb5_data *result_data); krb5_error_code krb5int_setpw_result_code_string (krb5_context context, int result_code, const char **result_codestr); struct srv_dns_entry { struct srv_dns_entry *next; int priority; int weight; unsigned short port; char *host; }; krb5_error_code krb5int_make_srv_query_realm(const krb5_data *realm, const char *service, const char *protocol, struct srv_dns_entry **answers); void krb5int_free_srv_dns_data(struct srv_dns_entry *); # 2331 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" char * krb5_getenv(const char *); int krb5_setenv (const char *, const char *, int); void krb5_unsetenv (const char *); # 2345 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" struct ktext; typedef struct _krb5int_access { const struct krb5_hash_provider *md5_hash_provider; const struct krb5_enc_provider *arcfour_enc_provider; krb5_error_code (* krb5_hmac) (krb5_context, const struct krb5_hash_provider *hash, const krb5_keyblock *key, unsigned int icount, const krb5_data *input, krb5_data *output); krb5_error_code (*sendto_udp) (krb5_context, const krb5_data *msg, const struct addrlist *, struct sendto_callback_info*, krb5_data *reply, struct sockaddr *, socklen_t *,struct sockaddr *, socklen_t *, int *, int (*msg_handler)(krb5_context, const krb5_data *, void *), void *msg_handler_data); krb5_error_code (*add_host_to_list)(struct addrlist *lp, const char *hostname, int port, int secport, int socktype, int family); void (*free_addrlist) (struct addrlist *); krb5_error_code (*make_srv_query_realm)(const krb5_data *realm, const char *service, const char *protocol, struct srv_dns_entry **answers); void (*free_srv_dns_data)(struct srv_dns_entry *); int (*use_dns_kdc)(krb5_context); krb5_error_code (*clean_hostname)(krb5_context, const char *, char *, size_t); krb5_int32 (*krb_life_to_time)(krb5_int32, int); int (*krb_time_to_life)(krb5_int32, krb5_int32); int (*krb524_encode_v4tkt)(struct ktext *, char *, unsigned int *); krb5_error_code (*krb5int_c_mandatory_cksumtype) (krb5_context, krb5_enctype, krb5_cksumtype *); krb5_error_code ( *krb5_ser_pack_int64) (krb5_int64, krb5_octet **, size_t *); krb5_error_code ( *krb5_ser_unpack_int64) (krb5_int64 *, krb5_octet **, size_t *); krb5_error_code (*asn1_ldap_encode_sequence_of_keys) (struct _krb5_key_data *key_data, krb5_int16 n_key_data, krb5_int32 mkvno, krb5_data **code); krb5_error_code (*asn1_ldap_decode_sequence_of_keys) (krb5_data *in, struct _krb5_key_data **out, krb5_int16 *n_key_data, int *mkvno); krb5_error_code (*encode_krb5_auth_pack) (const krb5_auth_pack *rep, krb5_data **code); krb5_error_code (*encode_krb5_auth_pack_draft9) (const krb5_auth_pack_draft9 *rep, krb5_data **code); krb5_error_code (*encode_krb5_kdc_dh_key_info) (const krb5_kdc_dh_key_info *rep, krb5_data **code); krb5_error_code (*encode_krb5_pa_pk_as_rep) (const krb5_pa_pk_as_rep *rep, krb5_data **code); krb5_error_code (*encode_krb5_pa_pk_as_rep_draft9) (const krb5_pa_pk_as_rep_draft9 *rep, krb5_data **code); krb5_error_code (*encode_krb5_pa_pk_as_req) (const krb5_pa_pk_as_req *rep, krb5_data **code); krb5_error_code (*encode_krb5_pa_pk_as_req_draft9) (const krb5_pa_pk_as_req_draft9 *rep, krb5_data **code); krb5_error_code (*encode_krb5_reply_key_pack) (const krb5_reply_key_pack *, krb5_data **code); krb5_error_code (*encode_krb5_reply_key_pack_draft9) (const krb5_reply_key_pack_draft9 *, krb5_data **code); krb5_error_code (*encode_krb5_td_dh_parameters) (const krb5_algorithm_identifier **, krb5_data **code); krb5_error_code (*encode_krb5_td_trusted_certifiers) (const krb5_external_principal_identifier **, krb5_data **code); krb5_error_code (*encode_krb5_typed_data) (const krb5_typed_data **, krb5_data **code); krb5_error_code (*decode_krb5_auth_pack) (const krb5_data *, krb5_auth_pack **); krb5_error_code (*decode_krb5_auth_pack_draft9) (const krb5_data *, krb5_auth_pack_draft9 **); krb5_error_code (*decode_krb5_pa_pk_as_req) (const krb5_data *, krb5_pa_pk_as_req **); krb5_error_code (*decode_krb5_pa_pk_as_req_draft9) (const krb5_data *, krb5_pa_pk_as_req_draft9 **); krb5_error_code (*decode_krb5_pa_pk_as_rep) (const krb5_data *, krb5_pa_pk_as_rep **); krb5_error_code (*decode_krb5_pa_pk_as_rep_draft9) (const krb5_data *, krb5_pa_pk_as_rep_draft9 **); krb5_error_code (*decode_krb5_kdc_dh_key_info) (const krb5_data *, krb5_kdc_dh_key_info **); krb5_error_code (*decode_krb5_principal_name) (const krb5_data *, krb5_principal_data **); krb5_error_code (*decode_krb5_reply_key_pack) (const krb5_data *, krb5_reply_key_pack **); krb5_error_code (*decode_krb5_reply_key_pack_draft9) (const krb5_data *, krb5_reply_key_pack_draft9 **); krb5_error_code (*decode_krb5_td_dh_parameters) (const krb5_data *, krb5_algorithm_identifier ***); krb5_error_code (*decode_krb5_td_trusted_certifiers) (const krb5_data *, krb5_external_principal_identifier ***); krb5_error_code (*decode_krb5_typed_data) (const krb5_data *, krb5_typed_data ***); krb5_error_code (*decode_krb5_as_req) (const krb5_data *output, krb5_kdc_req **rep); krb5_error_code (*encode_krb5_kdc_req_body) (const krb5_kdc_req *rep, krb5_data **code); void ( *krb5_free_kdc_req) (krb5_context, krb5_kdc_req * ); void (*krb5int_set_prompt_types) (krb5_context, krb5_prompt_type *); krb5_error_code (*encode_krb5_authdata_elt) (const krb5_authdata *rep, krb5_data **code); } krb5int_access; krb5_error_code krb5int_accessor (krb5int_access*, krb5_int32); # 2487 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" extern krb5_int32 krb5int_krb_life_to_time(krb5_int32, int); extern int krb5int_krb_time_to_life(krb5_int32, krb5_int32); int krb5int_encode_v4tkt (struct ktext *v4tkt, char *buf, unsigned int *encoded_len); int krb5int_524_sendto_kdc (krb5_context context, const krb5_data * message, const krb5_data * realm, krb5_data * reply, struct sockaddr *, socklen_t *); struct _krb5_ccache { krb5_magic magic; const struct _krb5_cc_ops *ops; krb5_pointer data; }; struct krb5_cc_ptcursor { const struct _krb5_cc_ops *ops; krb5_pointer data; }; typedef struct krb5_cc_ptcursor *krb5_cc_ptcursor; struct _krb5_cc_ops { krb5_magic magic; char *prefix; const char * ( *get_name) (krb5_context, krb5_ccache); krb5_error_code ( *resolve) (krb5_context, krb5_ccache *, const char *); krb5_error_code ( *gen_new) (krb5_context, krb5_ccache *); krb5_error_code ( *init) (krb5_context, krb5_ccache, krb5_principal); krb5_error_code ( *destroy) (krb5_context, krb5_ccache); krb5_error_code ( *close) (krb5_context, krb5_ccache); krb5_error_code ( *store) (krb5_context, krb5_ccache, krb5_creds *); krb5_error_code ( *retrieve) (krb5_context, krb5_ccache, krb5_flags, krb5_creds *, krb5_creds *); krb5_error_code ( *get_princ) (krb5_context, krb5_ccache, krb5_principal *); krb5_error_code ( *get_first) (krb5_context, krb5_ccache, krb5_cc_cursor *); krb5_error_code ( *get_next) (krb5_context, krb5_ccache, krb5_cc_cursor *, krb5_creds *); krb5_error_code ( *end_get) (krb5_context, krb5_ccache, krb5_cc_cursor *); krb5_error_code ( *remove_cred) (krb5_context, krb5_ccache, krb5_flags, krb5_creds *); krb5_error_code ( *set_flags) (krb5_context, krb5_ccache, krb5_flags); krb5_error_code ( *get_flags) (krb5_context, krb5_ccache, krb5_flags *); krb5_error_code ( *ptcursor_new)(krb5_context, krb5_cc_ptcursor *); krb5_error_code ( *ptcursor_next)(krb5_context, krb5_cc_ptcursor, krb5_ccache *); krb5_error_code ( *ptcursor_free)(krb5_context, krb5_cc_ptcursor *); krb5_error_code ( *move)(krb5_context, krb5_ccache); krb5_error_code ( *lastchange)(krb5_context, krb5_ccache, krb5_timestamp *); krb5_error_code ( *wasdefault)(krb5_context, krb5_ccache, krb5_timestamp *); }; extern const krb5_cc_ops *krb5_cc_dfl_ops; krb5_error_code krb5int_cc_os_default_name(krb5_context context, char **name); struct krb5_cc_typecursor; typedef struct krb5_cc_typecursor *krb5_cc_typecursor; krb5_error_code krb5int_cc_typecursor_new(krb5_context context, krb5_cc_typecursor *cursor); krb5_error_code krb5int_cc_typecursor_next( krb5_context context, krb5_cc_typecursor cursor, const struct _krb5_cc_ops **ops); krb5_error_code krb5int_cc_typecursor_free( krb5_context context, krb5_cc_typecursor *cursor); typedef struct _krb5_donot_replay { krb5_magic magic; krb5_ui_4 hash; char *server; char *client; char *msghash; krb5_int32 cusec; krb5_timestamp ctime; } krb5_donot_replay; krb5_error_code krb5_rc_default (krb5_context, krb5_rcache *); krb5_error_code krb5_rc_resolve_type (krb5_context, krb5_rcache *,char *); krb5_error_code krb5_rc_resolve_full (krb5_context, krb5_rcache *,char *); char * krb5_rc_get_type (krb5_context, krb5_rcache); char * krb5_rc_default_type (krb5_context); char * krb5_rc_default_name (krb5_context); krb5_error_code krb5_auth_to_rep (krb5_context, krb5_tkt_authent *, krb5_donot_replay *); krb5_error_code krb5_rc_initialize (krb5_context, krb5_rcache,krb5_deltat); krb5_error_code krb5_rc_recover_or_initialize (krb5_context, krb5_rcache,krb5_deltat); krb5_error_code krb5_rc_recover (krb5_context, krb5_rcache); krb5_error_code krb5_rc_destroy (krb5_context, krb5_rcache); krb5_error_code krb5_rc_close (krb5_context, krb5_rcache); krb5_error_code krb5_rc_store (krb5_context, krb5_rcache,krb5_donot_replay *); krb5_error_code krb5_rc_expunge (krb5_context, krb5_rcache); krb5_error_code krb5_rc_get_lifespan (krb5_context, krb5_rcache,krb5_deltat *); char * krb5_rc_get_name (krb5_context, krb5_rcache); krb5_error_code krb5_rc_resolve (krb5_context, krb5_rcache, char *); typedef struct _krb5_kt_ops { krb5_magic magic; char *prefix; krb5_error_code ( *resolve) (krb5_context, const char *, krb5_keytab *); krb5_error_code ( *get_name) (krb5_context, krb5_keytab, char *, unsigned int); krb5_error_code ( *close) (krb5_context, krb5_keytab); krb5_error_code ( *get) (krb5_context, krb5_keytab, krb5_const_principal, krb5_kvno, krb5_enctype, krb5_keytab_entry *); krb5_error_code ( *start_seq_get) (krb5_context, krb5_keytab, krb5_kt_cursor *); krb5_error_code ( *get_next) (krb5_context, krb5_keytab, krb5_keytab_entry *, krb5_kt_cursor *); krb5_error_code ( *end_get) (krb5_context, krb5_keytab, krb5_kt_cursor *); krb5_error_code ( *add) (krb5_context, krb5_keytab, krb5_keytab_entry *); krb5_error_code ( *remove) (krb5_context, krb5_keytab, krb5_keytab_entry *); const krb5_ser_entry *serializer; } krb5_kt_ops; extern const krb5_kt_ops krb5_kt_dfl_ops; extern krb5_error_code krb5int_translate_gai_error (int); extern krb5_error_code krb5int_c_mandatory_cksumtype (krb5_context, krb5_enctype, krb5_cksumtype *); extern int krb5int_crypto_init (void); extern int krb5int_prng_init(void); # 2720 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" static int data_eq (krb5_data d1, krb5_data d2) { return (d1.length == d2.length && !memcmp(d1.data, d2.data, d1.length)); } static krb5_data string2data (char *str) { krb5_data d; d.magic = (-1760647422L); d.length = strlen(str); d.data = str; return d; } static int data_eq_string (krb5_data d, char *s) { return data_eq(d, string2data(s)); } static int authdata_eq (krb5_authdata a1, krb5_authdata a2) { return (a1.ad_type == a2.ad_type && a1.length == a2.length && !memcmp(a1.contents, a2.contents, a1.length)); } krb5_boolean is_in_keytype (const krb5_enctype *keytype, int numkeytypes, krb5_enctype enctype); extern uid_t krb5_getuid(); # 2770 "/code/illumos-gate/usr/src/uts/common/gssapi/mechs/krb5/include/k5-int.h" krb5_error_code krb5int_clean_hostname (krb5_context, const char *, char *, size_t); void *krb5int_realloc (void *oldp, size_t new_size, size_t old_size); # 35 "../krb5/posix/daemon.c" 2 # 47 "../krb5/posix/daemon.c" int daemon(nochdir, noclose) int nochdir, noclose; { int cpid; if ((cpid = fork()) == -1) return (-1); if (cpid) exit(0); setpgrp(); # 81 "../krb5/posix/daemon.c" if (!nochdir) (void) chdir("/"); if (!noclose) { int devnull = open("/dev/null", 2, 0); if (devnull != -1) { (void) dup2(devnull, 0); (void) dup2(devnull, 1); (void) dup2(devnull, 2); if (devnull > 2) (void) close(devnull); } } return (0); }