memcredp          764 source3/winbindd/winbindd_cred_cache.c static NTSTATUS store_memory_creds(struct WINBINDD_MEMORY_CREDS *memcredp,
memcredp          774 source3/winbindd/winbindd_cred_cache.c 	memcredp->len = NT_HASH_LEN + LM_HASH_LEN;
memcredp          776 source3/winbindd/winbindd_cred_cache.c 		memcredp->len += strlen(pass)+1;
memcredp          784 source3/winbindd/winbindd_cred_cache.c 	memcredp->nt_hash = SMB_MALLOC_ARRAY(unsigned char, memcredp->len);
memcredp          787 source3/winbindd/winbindd_cred_cache.c 	memcredp->nt_hash = SMB_MEMALIGN_ARRAY(unsigned char,
memcredp          788 source3/winbindd/winbindd_cred_cache.c 					       getpagesize(), memcredp->len);
memcredp          790 source3/winbindd/winbindd_cred_cache.c 	if (!memcredp->nt_hash) {
memcredp          793 source3/winbindd/winbindd_cred_cache.c 	memset(memcredp->nt_hash, 0x0, memcredp->len);
memcredp          795 source3/winbindd/winbindd_cred_cache.c 	memcredp->lm_hash = memcredp->nt_hash + NT_HASH_LEN;
memcredp          798 source3/winbindd/winbindd_cred_cache.c 	DEBUG(10,("mlocking memory: %p\n", memcredp->nt_hash));
memcredp          800 source3/winbindd/winbindd_cred_cache.c 	if ((mlock(memcredp->nt_hash, memcredp->len)) == -1) {
memcredp          803 source3/winbindd/winbindd_cred_cache.c 		SAFE_FREE(memcredp->nt_hash);
memcredp          808 source3/winbindd/winbindd_cred_cache.c 	DEBUG(10,("mlocked memory: %p\n", memcredp->nt_hash));
memcredp          812 source3/winbindd/winbindd_cred_cache.c 	E_md4hash(pass, memcredp->nt_hash);
memcredp          813 source3/winbindd/winbindd_cred_cache.c 	E_deshash(pass, memcredp->lm_hash);
memcredp          816 source3/winbindd/winbindd_cred_cache.c 		memcredp->pass = (char *)memcredp->lm_hash + LM_HASH_LEN;
memcredp          817 source3/winbindd/winbindd_cred_cache.c 		memcpy(memcredp->pass, pass,
memcredp          818 source3/winbindd/winbindd_cred_cache.c 		       memcredp->len - NT_HASH_LEN - LM_HASH_LEN);
memcredp          829 source3/winbindd/winbindd_cred_cache.c static NTSTATUS delete_memory_creds(struct WINBINDD_MEMORY_CREDS *memcredp)
memcredp          834 source3/winbindd/winbindd_cred_cache.c 	if (munlock(memcredp->nt_hash, memcredp->len) == -1) {
memcredp          839 source3/winbindd/winbindd_cred_cache.c 	memset(memcredp->nt_hash, '\0', memcredp->len);
memcredp          840 source3/winbindd/winbindd_cred_cache.c 	SAFE_FREE(memcredp->nt_hash);
memcredp          841 source3/winbindd/winbindd_cred_cache.c 	memcredp->nt_hash = NULL;
memcredp          842 source3/winbindd/winbindd_cred_cache.c 	memcredp->lm_hash = NULL;
memcredp          843 source3/winbindd/winbindd_cred_cache.c 	memcredp->pass = NULL;
memcredp          844 source3/winbindd/winbindd_cred_cache.c 	memcredp->len = 0;
memcredp          853 source3/winbindd/winbindd_cred_cache.c static NTSTATUS winbindd_replace_memory_creds_internal(struct WINBINDD_MEMORY_CREDS *memcredp,
memcredp          856 source3/winbindd/winbindd_cred_cache.c 	NTSTATUS status = delete_memory_creds(memcredp);
memcredp          860 source3/winbindd/winbindd_cred_cache.c 	return store_memory_creds(memcredp, pass);
memcredp          876 source3/winbindd/winbindd_cred_cache.c 	struct WINBINDD_MEMORY_CREDS *memcredp = NULL;
memcredp          878 source3/winbindd/winbindd_cred_cache.c 	memcredp = find_memory_creds_by_name(username);
memcredp          885 source3/winbindd/winbindd_cred_cache.c 	if (memcredp) {
memcredp          887 source3/winbindd/winbindd_cred_cache.c 		if (uid != memcredp->uid) {
memcredp          892 source3/winbindd/winbindd_cred_cache.c 				(unsigned int)memcredp->uid));
memcredp          893 source3/winbindd/winbindd_cred_cache.c 			memcredp->uid = uid;
memcredp          895 source3/winbindd/winbindd_cred_cache.c 		memcredp->ref_count++;
memcredp          898 source3/winbindd/winbindd_cred_cache.c 			username, memcredp->ref_count));
memcredp          899 source3/winbindd/winbindd_cred_cache.c 		return winbindd_replace_memory_creds_internal(memcredp, pass);
memcredp          902 source3/winbindd/winbindd_cred_cache.c 	memcredp = TALLOC_ZERO_P(NULL, struct WINBINDD_MEMORY_CREDS);
memcredp          903 source3/winbindd/winbindd_cred_cache.c 	if (!memcredp) {
memcredp          906 source3/winbindd/winbindd_cred_cache.c 	memcredp->username = talloc_strdup(memcredp, username);
memcredp          907 source3/winbindd/winbindd_cred_cache.c 	if (!memcredp->username) {
memcredp          908 source3/winbindd/winbindd_cred_cache.c 		talloc_destroy(memcredp);
memcredp          912 source3/winbindd/winbindd_cred_cache.c 	status = store_memory_creds(memcredp, pass);
memcredp          914 source3/winbindd/winbindd_cred_cache.c 		talloc_destroy(memcredp);
memcredp          918 source3/winbindd/winbindd_cred_cache.c 	memcredp->uid = uid;
memcredp          919 source3/winbindd/winbindd_cred_cache.c 	memcredp->ref_count = 1;
memcredp          920 source3/winbindd/winbindd_cred_cache.c 	DLIST_ADD(memory_creds_list, memcredp);
memcredp          949 source3/winbindd/winbindd_cred_cache.c 		struct WINBINDD_MEMORY_CREDS *memcredp = NULL;
memcredp          950 source3/winbindd/winbindd_cred_cache.c 		memcredp = find_memory_creds_by_name(username);
memcredp          951 source3/winbindd/winbindd_cred_cache.c 		if (memcredp) {
memcredp          952 source3/winbindd/winbindd_cred_cache.c 			entry->cred_ptr = memcredp;
memcredp          965 source3/winbindd/winbindd_cred_cache.c 	struct WINBINDD_MEMORY_CREDS *memcredp = NULL;
memcredp          969 source3/winbindd/winbindd_cred_cache.c 	memcredp = find_memory_creds_by_name(username);
memcredp          972 source3/winbindd/winbindd_cred_cache.c 	if (!memcredp) {
memcredp          978 source3/winbindd/winbindd_cred_cache.c 	if (memcredp->ref_count <= 0) {
memcredp          981 source3/winbindd/winbindd_cred_cache.c 			username, memcredp->ref_count));
memcredp          985 source3/winbindd/winbindd_cred_cache.c 	memcredp->ref_count--;
memcredp          986 source3/winbindd/winbindd_cred_cache.c 	if (memcredp->ref_count <= 0) {
memcredp          987 source3/winbindd/winbindd_cred_cache.c 		delete_memory_creds(memcredp);
memcredp          988 source3/winbindd/winbindd_cred_cache.c 		DLIST_REMOVE(memory_creds_list, memcredp);
memcredp          989 source3/winbindd/winbindd_cred_cache.c 		talloc_destroy(memcredp);
memcredp          996 source3/winbindd/winbindd_cred_cache.c 			username, memcredp->ref_count));
memcredp         1014 source3/winbindd/winbindd_cred_cache.c 	struct WINBINDD_MEMORY_CREDS *memcredp = NULL;
memcredp         1016 source3/winbindd/winbindd_cred_cache.c 	memcredp = find_memory_creds_by_name(username);
memcredp         1017 source3/winbindd/winbindd_cred_cache.c 	if (!memcredp) {
memcredp         1026 source3/winbindd/winbindd_cred_cache.c 	return winbindd_replace_memory_creds_internal(memcredp, pass);