X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/6d2010ae8f7a6078e10b361c6962983bab233e0f..2a1bd2d3eef5c7a7bb14f4bb9fdbca9a96ee4752:/osfmk/gssd/gssd_mach.defs diff --git a/osfmk/gssd/gssd_mach.defs b/osfmk/gssd/gssd_mach.defs index abe5ffe08..774f28e35 100644 --- a/osfmk/gssd/gssd_mach.defs +++ b/osfmk/gssd/gssd_mach.defs @@ -44,6 +44,7 @@ type gssd_verifier = uint64_t; type gssd_gid_list = array [*:16] of uint32_t; type gssd_ctx = uint64_t; type gssd_cred = uint64_t; +type gssd_etype_list = array [*:64] of int32_t; subsystem #if KERNEL_USER @@ -53,7 +54,7 @@ gssd_mach 999; serverprefix svc_; -routine mach_gss_init_sec_context( +Routine mach_gss_init_sec_context( server : mach_port_t; in mech : gssd_mechtype; in intoken : gssd_byte_buffer; @@ -64,6 +65,7 @@ routine mach_gss_init_sec_context( in gssd_flags : uint32_t; inout context : gssd_ctx; inout cred_handle : gssd_cred; + ServerAuditToken atoken : audit_token_t; out ret_flags : uint32_t; out key : gssd_byte_buffer, dealloc; out outtoken : gssd_byte_buffer, dealloc; @@ -78,6 +80,7 @@ routine mach_gss_accept_sec_context( in gssd_flags : uint32_t; inout context : gssd_ctx; inout cred_handle : gssd_cred; + ServerAuditToken atoken : audit_token_t; out flags : uint32_t; out uid : uint32_t; out gids : gssd_gid_list; @@ -93,7 +96,8 @@ simpleroutine mach_gss_log_error( in uid : uint32_t; in source : gssd_string; in major_stat : uint32_t; - in minor_stat : uint32_t + in minor_stat : uint32_t; + ServerAuditToken atoken : audit_token_t ); routine mach_gss_init_sec_context_v2( @@ -109,6 +113,7 @@ routine mach_gss_init_sec_context_v2( inout gssd_flags : uint32_t; inout context : gssd_ctx; inout cred_handle : gssd_cred; + ServerAuditToken atoken : audit_token_t; out ret_flags : uint32_t; out key : gssd_byte_buffer, dealloc; out outtoken : gssd_byte_buffer, dealloc; @@ -125,6 +130,7 @@ routine mach_gss_accept_sec_context_v2( inout gssd_flags : uint32_t; inout context : gssd_ctx; inout cred_handle : gssd_cred; + ServerAuditToken atoken : audit_token_t; out flags : uint32_t; out uid : uint32_t; out gids : gssd_gid_list; @@ -134,11 +140,35 @@ routine mach_gss_accept_sec_context_v2( out minor_stat : uint32_t ); +routine mach_gss_init_sec_context_v3( + server : mach_port_t; + in mech : gssd_mechtype; + in intoken : gssd_byte_buffer; + in uid : uint32_t; + in clnt_nt : gssd_nametype; + in clnt_princ : gssd_byte_buffer; + in svc_nt : gssd_nametype; + in svc_princ : gssd_byte_buffer; + in flags : uint32_t; + in etypes : gssd_etype_list; + inout gssd_flags : uint32_t; + inout context : gssd_ctx; + inout cred_handle : gssd_cred; + ServerAuditToken atoken : audit_token_t; + out ret_flags : uint32_t; + out key : gssd_byte_buffer, dealloc; + out outtoken : gssd_byte_buffer, dealloc; + out displayname : gssd_dstring; + out major_stat : uint32_t; + out minor_stat : uint32_t +); + routine mach_gss_hold_cred( server : mach_port_t; in mech : gssd_mechtype; in nt : gssd_nametype; in princ : gssd_byte_buffer; + ServerAuditToken atoken : audit_token_t; out major_stat : uint32_t; out minor_stat : uint32_t ); @@ -148,6 +178,15 @@ routine mach_gss_unhold_cred( in mech : gssd_mechtype; in nt : gssd_nametype; in princ : gssd_byte_buffer; + ServerAuditToken atoken : audit_token_t; out major_stat : uint32_t; out minor_stat : uint32_t ); + +routine mach_gss_lookup( + server : mach_port_t; + in uid : uint32_t; + in asid : int32_t; + ServerAuditToken atoken : audit_token_t; + out gssd_session_port : mach_port_t +);