関数 | |
static void | free_data_blob (DATA_BLOB *d) |
DATA_BLOB | data_blob (const void *p, size_t length) |
DATA_BLOB | data_blob_talloc (TALLOC_CTX *mem_ctx, const void *p, size_t length) |
void | data_blob_free (DATA_BLOB *d) |
void | data_blob_clear (DATA_BLOB *d) |
void | data_blob_clear_free (DATA_BLOB *d) |
DATA_BLOB | data_blob_string_const (const char *str) |
useful for constructing data blobs in test suites, while avoiding const warnings | |
DATA_BLOB | data_blob_const (const void *p, size_t length) |
Create a new data blob from const data |
static void free_data_blob | ( | DATA_BLOB * | d | ) | [static] |
DATA_BLOB data_blob | ( | const void * | p, | |
size_t | length | |||
) |
data_blob.c の 40 行で定義されています。
参照先 data_blob_::data・data_blob_::free・free_data_blob()・data_blob_::length・smb_xmemdup().
参照元 _srv_net_file_query_secdesc()・_srv_net_file_set_secdesc()・add_ntlmssp_auth_footer()・ads_sasl_spnego_bind()・ads_sasl_spnego_ntlmssp_bind()・ads_sasl_spnego_rawkrb5_bind()・ads_verify_ticket()・afs_createtoken()・afs_encode_token()・api_pipe_bind_auth3()・api_SetUserPassword()・asn1_read_OctetString()・auth_get_challenge_server()・auth_get_fixed_challenge()・base64_decode_data_blob()・build_kpasswd_request()・check_sam_security()・check_spnego_blob_complete()・cli_krb5_get_ticket()・cli_list_new()・cli_negprot()・cli_raw_ioctl()・cli_session_setup_blob()・cli_session_setup_blob_receive()・cli_session_setup_lanman2()・cli_session_setup_nt1()・cli_session_setup_ntlmssp()・cli_session_setup_spnego()・cli_set_session_key()・cli_simple_set_signing()・create_krb5_auth_bind_req()・create_ntlmssp_auth_rpc_bind_req()・create_spnego_ntlmssp_auth_rpc_bind_req()・decrypt_trustdom_secret()・delete_driver_files()・display_trust_dom_info_4()・do_ccache_ntlm_auth()・do_ntlm_auth_with_hashes()・encode_krb5_setpw()・gen_negTokenInit()・gen_negTokenTarg()・get_auth_data_from_tkt()・get_challenge()・get_correct_cversion()・get_krb5_smb_session_key()・get_ntlm_challenge()・init_sam_user_info20A()・init_sam_user_info21A()・LMv2_generate_response()・make_connection()・make_internal_rpc_pipe_p()・make_krb5_skew_error()・make_new_server_info_guest()・make_user_info()・make_user_info_for_reply()・make_user_info_netlogon_interactive()・make_user_info_netlogon_network()・manage_client_krb5_init()・manage_client_ntlmssp_init()・manage_client_ntlmssp_request()・manage_client_ntlmssp_targ()・manage_gss_spnego_request()・manage_ntlm_change_password_1_request()・manage_ntlm_server_1_request()・manage_squid_ntlmssp_request()・move_driver_to_download_area()・msrpc_gen()・msrpc_parse()・negprot_spnego()・ntlm_password_check()・ntlmssp_client_challenge()・ntlmssp_make_packet_signature()・ntlmssp_server_auth()・ntlmssp_server_negotiate()・ntlmssp_update()・NTLMv2_generate_client_data()・NTLMv2_generate_names_blob()・NTLMv2_generate_response()・offer_gss_spnego_mechs()・password_ok()・pdb_set_lanman_passwd()・pdb_set_nt_passwd()・pipe_ntlmssp_auth_bind()・pipe_ntlmssp_verify_final()・pipe_spnego_auth_bind_continue()・pipe_spnego_auth_bind_negotiate()・read_negTokenInit()・recv_cldap_netlogon()・reply_sesssetup_and_X()・reply_sesssetup_and_X_spnego()・reply_spnego_auth()・reply_spnego_kerberos()・reply_spnego_ntlmssp()・reply_tcon()・reply_tcon_and_X()・rpc_finish_auth3_bind()・rpc_finish_spnego_ntlmssp_bind()・smb_pwd_check_ntlmv1()・smb_pwd_check_ntlmv2()・SMBNTLMv2encrypt_hash()・spnego_gen_auth()・spnego_gen_auth_response()・spnego_gen_krb5_wrap()・spnego_gen_negTokenInit()・spnego_parse_krb5_wrap()・srv_set_signing()・strhex_to_data_blob()・test_lm_ntlm_broken()・test_lmv2_ntlmv2_broken()・test_ntlm_in_both()・test_ntlm_in_lm()・test_plaintext()・vampire_trusted_domain()・wbinfo_auth_crap()・winbind_pw_check()・winbindd_dual_ccache_ntlm_auth()・winbindd_dual_pam_auth_samlogon()・write_spnego_data().
00041 { 00042 DATA_BLOB ret; 00043 00044 if (!length) { 00045 ZERO_STRUCT(ret); 00046 return ret; 00047 } 00048 00049 if (p) { 00050 ret.data = (uint8 *)smb_xmemdup(p, length); 00051 } else { 00052 ret.data = SMB_XMALLOC_ARRAY(uint8, length); 00053 } 00054 ret.length = length; 00055 ret.free = free_data_blob; 00056 return ret; 00057 }
DATA_BLOB data_blob_talloc | ( | TALLOC_CTX * | mem_ctx, | |
const void * | p, | |||
size_t | length | |||
) |
data_blob.c の 63 行で定義されています。
参照先 data_blob_::data・data_blob_::free・data_blob_::length・smb_panic().
参照元 auth_get_challenge_server()・auth_ntlmssp_check_password()・auth_ntlmssp_set_challenge()・check_sam_security()・cli_get_ea_list()・copy_serverinfo()・decode_pac_data()・get_ntlm_challenge()・make_auth_context_fixed()・ndr_pull_DATA_BLOB()・netdom_join_domain()・ntlmssp_client_challenge()・ntlmssp_server_auth()・ntlmssp_server_negotiate()・ntlmssp_store_response()・ntlmssp_weaken_keys()・pdb_set_lanman_passwd()・pdb_set_nt_passwd()・pdb_set_pw_history()・push_queued_message()・read_ea_list_entry()・strhex_to_data_blob()・unwrap_pac()・winbindd_dual_pam_auth_crap()・winbindd_dual_pam_auth_samlogon()・winbindd_dual_pam_chng_pswd_auth_crap().
00064 { 00065 DATA_BLOB ret; 00066 00067 if (!length) { 00068 ZERO_STRUCT(ret); 00069 return ret; 00070 } 00071 00072 if (p) { 00073 ret.data = (uint8 *)TALLOC_MEMDUP(mem_ctx, p, length); 00074 if (ret.data == NULL) 00075 smb_panic("data_blob_talloc: TALLOC_MEMDUP failed.\n"); 00076 } else { 00077 ret.data = (uint8 *)TALLOC(mem_ctx, length); 00078 if (ret.data == NULL) 00079 smb_panic("data_blob_talloc: talloc failed.\n"); 00080 } 00081 00082 ret.length = length; 00083 ret.free = NULL; 00084 return ret; 00085 }
void data_blob_free | ( | DATA_BLOB * | d | ) |
data_blob.c の 91 行で定義されています。
参照先 data_blob_::free・data_blob_::length.
参照元 add_ntlmssp_auth_footer()・ads_sasl_spnego_bind()・ads_sasl_spnego_ntlmssp_bind()・ads_sasl_spnego_rawkrb5_bind()・ads_verify_ticket()・afs_createtoken_str()・afs_decode_token()・afs_login()・afs_settoken_str()・api_pipe_bind_auth3()・base64_decode_inplace()・build_kpasswd_request()・check_sam_security()・check_spnego_blob_complete()・cli_list_new()・cli_session_setup_blob()・cli_session_setup_kerberos()・cli_session_setup_nt1()・cli_session_setup_ntlmssp()・cli_session_setup_spnego()・cli_shutdown()・close_internal_rpc_pipe_hnd()・create_krb5_auth_bind_req()・create_next_pdu_ntlmssp()・create_ntlmssp_auth_rpc_bind_req()・create_spnego_ntlmssp_auth_rpc_bind_req()・data_blob_clear_free()・decrypt_trustdom_secret()・delete_partial_auth()・display_trust_dom_info_4()・do_ntlm_auth_with_hashes()・free_spnego_data()・free_user_info()・get_auth_data_from_tkt()・handle_krb5_mech()・init_sam_user_info20A()・init_sam_user_info21A()・init_sam_user_info23A()・invalidate_vuid()・kerberos_auth_struct_free()・LMv2_generate_response()・main()・make_user_info_for_reply()・make_user_info_netlogon_interactive()・make_user_info_netlogon_network()・manage_client_krb5_init()・manage_client_ntlmssp_init()・manage_client_ntlmssp_request()・manage_client_ntlmssp_targ()・manage_gss_spnego_client_request()・manage_gss_spnego_request()・manage_squid_ntlmssp_request()・ntlmssp_check_packet()・ntlmssp_client_challenge()・ntlmssp_end()・ntlmssp_server_auth()・ntlmssp_server_negotiate()・NTLMv2_generate_response()・offer_gss_spnego_mechs()・parse_negTokenTarg()・pipe_ntlmssp_auth_bind()・pipe_ntlmssp_verify_final()・pipe_spnego_auth_bind_continue()・pipe_spnego_auth_bind_negotiate()・recv_cldap_netlogon()・register_vuid()・reply_nt1()・reply_sesssetup_and_X()・reply_sesssetup_and_X_spnego()・reply_spnego_auth()・reply_spnego_kerberos()・reply_spnego_negotiate()・reply_spnego_ntlmssp()・rpc_finish_auth3_bind()・rpc_finish_spnego_ntlmssp_bind()・simple_free_signing_context()・spnego_gen_negTokenTarg()・spnego_parse_auth()・spnego_parse_auth_response()・spnego_parse_challenge()・spnego_parse_krb5_wrap()・test_lm_ntlm_broken()・test_lmv2_ntlmv2_broken()・test_ntlm_in_both()・test_ntlm_in_lm()・test_plaintext()・torture_ioctl_test()・unwrap_pac()・vampire_trusted_domain()・wbinfo_auth_crap()・winbindd_dual_ccache_ntlm_auth()・winbindd_dual_pam_auth_samlogon()・winbindd_raw_kerberos_login().
00092 { 00093 if (d) { 00094 if (d->free) { 00095 (d->free)(d); 00096 } 00097 d->length = 0; 00098 } 00099 }
void data_blob_clear | ( | DATA_BLOB * | d | ) |
data_blob.c の 105 行で定義されています。
参照先 data_blob_::data・data_blob_::length.
参照元 data_blob_clear_free()・ndr_push_DATA_BLOB().
void data_blob_clear_free | ( | DATA_BLOB * | d | ) |
data_blob.c の 116 行で定義されています。
参照先 data_blob_clear()・data_blob_free().
参照元 api_SetUserPassword()・free_user_info()・pdb_set_lanman_passwd()・pdb_set_nt_passwd()・reply_sesssetup_and_X()・reply_tcon()・reply_tcon_and_X()・samu_destroy()・smb_pwd_check_ntlmv2().
00117 { 00118 data_blob_clear(d); 00119 data_blob_free(d); 00120 }
DATA_BLOB data_blob_string_const | ( | const char * | str | ) |
useful for constructing data blobs in test suites, while avoiding const warnings
data_blob.c の 126 行で定義されています。
参照先 data_blob_::data・data_blob_::free・data_blob_::length.
00127 { 00128 DATA_BLOB blob; 00129 blob.data = CONST_DISCARD(uint8 *, str); 00130 blob.length = strlen(str); 00131 blob.free = NULL; 00132 return blob; 00133 }
DATA_BLOB data_blob_const | ( | const void * | p, | |
size_t | length | |||
) |
Create a new data blob from const data
data_blob.c の 138 行で定義されています。
参照先 data_blob_::data・data_blob_::free・data_blob_::length.
00139 { 00140 DATA_BLOB blob; 00141 blob.data = CONST_DISCARD(uint8 *, p); 00142 blob.length = length; 00143 blob.free = NULL; 00144 return blob; 00145 }