Compare commits
No commits in common. "c8" and "c9" have entirely different histories.
|
@ -0,0 +1,2 @@
|
||||||
|
6a164128df94dd89e785ca9f42d7be5714f16bed SOURCES/samba-4.19.4.tar.xz
|
||||||
|
971f563c447eda8d144d6c9e743cd0f0488c0d9e SOURCES/samba-pubkey_AA99442FB680B620.gpg
|
|
@ -0,0 +1,42 @@
|
||||||
|
From 18913d384edb8c49c69501fd6db5511312614594 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Andreas Schneider <asn@samba.org>
|
||||||
|
Date: Fri, 27 Oct 2023 12:09:53 +0200
|
||||||
|
Subject: [PATCH] s3:passdb: Do not leak memory in pdb_tdb
|
||||||
|
|
||||||
|
==19938==ERROR: LeakSanitizer: detected memory leaks
|
||||||
|
|
||||||
|
Direct leak of 77 byte(s) in 1 object(s) allocated from:
|
||||||
|
#0 0x7f7d482841f8 in strdup (/lib64/libasan.so.8+0x841f8) (BuildId: 3e1694ad218c99a8b1b69231666a27df63cf19d0)
|
||||||
|
#1 0x7f7d47204846 (bin/shared/libsamba-util.so.0+0x4c846) (BuildId: 43b084eb9013442ac68eb1fc17649f142cbb0f94)
|
||||||
|
#2 0x7f7d40b1d97a in pdb_init_tdbsam ../../source3/passdb/pdb_tdb.c:1361
|
||||||
|
#3 0x7f7d4715f266 (bin/shared/libsamba-passdb.so.0+0x76266) (BuildId: 13d2858e2217592a22a4ee9203fef759d52df733)
|
||||||
|
#4 0x7f7d4715f57a (bin/shared/libsamba-passdb.so.0+0x7657a) (BuildId: 13d2858e2217592a22a4ee9203fef759d52df733)
|
||||||
|
#5 0x7f7d47163700 (bin/shared/libsamba-passdb.so.0+0x7a700) (BuildId: 13d2858e2217592a22a4ee9203fef759d52df733)
|
||||||
|
#6 0x55a9177d3853 in main ../../source3/smbd/server.c:1928
|
||||||
|
#7 0x7f7d434281af in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
|
||||||
|
|
||||||
|
Signed-off-by: Andreas Schneider <asn@samba.org>
|
||||||
|
Reviewed-by: Volker Lendecke <vl@samba.org>
|
||||||
|
|
||||||
|
Orabug: 36371906
|
||||||
|
Signed-off-by: Shaleen Bathla <shaleen.bathla@oracle.com>
|
||||||
|
Reviewed-by: Laurence Rochfort <laurence.rochfort@oracle.com>
|
||||||
|
---
|
||||||
|
source3/passdb/pdb_tdb.c | 3 +++
|
||||||
|
1 file changed, 3 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/source3/passdb/pdb_tdb.c b/source3/passdb/pdb_tdb.c
|
||||||
|
index 4c578f8069d..f9ba193df3b 100644
|
||||||
|
--- a/source3/passdb/pdb_tdb.c
|
||||||
|
+++ b/source3/passdb/pdb_tdb.c
|
||||||
|
@@ -1346,6 +1346,9 @@ static NTSTATUS pdb_init_tdbsam(struct pdb_methods **pdb_method, const char *loc
|
||||||
|
}
|
||||||
|
pfile = tdbfile;
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+ /* Do not leak memory if the init function is called more than once */
|
||||||
|
+ SAFE_FREE(tdbsam_filename);
|
||||||
|
tdbsam_filename = SMB_STRDUP(pfile);
|
||||||
|
if (!tdbsam_filename) {
|
||||||
|
return NT_STATUS_NO_MEMORY;
|
||||||
|
--
|
|
@ -0,0 +1,80 @@
|
||||||
|
From 48493735e2d2091740fe784cf07a4258dfc0b512 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Shaleen Bathla <shaleen.bathla@oracle.com>
|
||||||
|
Date: Wed, 10 Apr 2024 18:31:39 +0530
|
||||||
|
Subject: [PATCH] s3: winbindd: winbindd_pam: fix leak in extract_pac_vrfy_sigs
|
||||||
|
|
||||||
|
Add missing free for entry variable and its members : key and principal
|
||||||
|
Found definite memory leaks via valgrind as shown below.
|
||||||
|
|
||||||
|
Leak 1 :
|
||||||
|
==1686== 76,800 bytes in 2,400 blocks are definitely lost in loss record 432 of 433
|
||||||
|
==1686== at 0x4C38185: malloc (vg_replace_malloc.c:431)
|
||||||
|
==1686== by 0x79CBFED: krb5int_c_copy_keyblock_contents (keyblocks.c:101)
|
||||||
|
==1686== by 0x621CFA3: krb5_mkt_get_next (kt_memory.c:500)
|
||||||
|
==1686== by 0x141186: extract_pac_vrfy_sigs (winbindd_pam.c:3384)
|
||||||
|
==1686== by 0x141186: winbindd_pam_auth_pac_verify (winbindd_pam.c:3434)
|
||||||
|
==1686== by 0x17ED21: winbindd_pam_auth_crap_send (winbindd_pam_auth_crap.c:68)
|
||||||
|
==1686== by 0x127F45: process_request_send (winbindd.c:502)
|
||||||
|
==1686== by 0x127F45: winbind_client_request_read (winbindd.c:749)
|
||||||
|
==1686== by 0x124AAF: wb_req_read_done (wb_reqtrans.c:126)
|
||||||
|
==1686== by 0x66D4706: tevent_common_invoke_fd_handler (tevent_fd.c:142)
|
||||||
|
==1686== by 0x66DAF4E: epoll_event_loop (tevent_epoll.c:737)
|
||||||
|
==1686== by 0x66DAF4E: epoll_event_loop_once (tevent_epoll.c:938)
|
||||||
|
==1686== by 0x66D8F5A: std_event_loop_once (tevent_standard.c:110)
|
||||||
|
==1686== by 0x66D39B4: _tevent_loop_once (tevent.c:823)
|
||||||
|
==1686== by 0x1232F3: main (winbindd.c:1718)
|
||||||
|
|
||||||
|
Leak 2 :
|
||||||
|
==1686== at 0x4C38185: malloc (vg_replace_malloc.c:431)
|
||||||
|
==1686== by 0x62255E4: krb5_copy_principal (copy_princ.c:38)
|
||||||
|
==1686== by 0x621D003: krb5_mkt_get_next (kt_memory.c:503)
|
||||||
|
==1686== by 0x141186: extract_pac_vrfy_sigs (winbindd_pam.c:3384)
|
||||||
|
==1686== by 0x141186: winbindd_pam_auth_pac_verify (winbindd_pam.c:3434)
|
||||||
|
==1686== by 0x17ED21: winbindd_pam_auth_crap_send (winbindd_pam_auth_crap.c:68)
|
||||||
|
==1686== by 0x127F45: process_request_send (winbindd.c:502)
|
||||||
|
==1686== by 0x127F45: winbind_client_request_read (winbindd.c:749)
|
||||||
|
==1686== by 0x124AAF: wb_req_read_done (wb_reqtrans.c:126)
|
||||||
|
==1686== by 0x66D4706: tevent_common_invoke_fd_handler (tevent_fd.c:142)
|
||||||
|
==1686== by 0x66DAF4E: epoll_event_loop (tevent_epoll.c:737)
|
||||||
|
==1686== by 0x66DAF4E: epoll_event_loop_once (tevent_epoll.c:938)
|
||||||
|
==1686== by 0x66D8F5A: std_event_loop_once (tevent_standard.c:110)
|
||||||
|
==1686== by 0x66D39B4: _tevent_loop_once (tevent.c:823)
|
||||||
|
==1686== by 0x1232F3: main (winbindd.c:1718)
|
||||||
|
|
||||||
|
Signed-off-by: Shaleen Bathla <shaleen.bathla@oracle.com>
|
||||||
|
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
|
||||||
|
Reviewed-by: Andreas Schneider <asn@samba.org>
|
||||||
|
|
||||||
|
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
|
||||||
|
Autobuild-Date(master): Tue Apr 16 10:22:51 UTC 2024 on atb-devel-224
|
||||||
|
|
||||||
|
Orabug: 36566309
|
||||||
|
Signed-off-by: Shaleen Bathla <shaleen.bathla@oracle.com>
|
||||||
|
Reviewed-by: Laurence Rochfort <laurence.rochfort@oracle.com>
|
||||||
|
---
|
||||||
|
source3/winbindd/winbindd_pam.c | 7 ++++++-
|
||||||
|
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/source3/winbindd/winbindd_pam.c b/source3/winbindd/winbindd_pam.c
|
||||||
|
index 6c890c8acd5..e7d64189b7e 100644
|
||||||
|
--- a/source3/winbindd/winbindd_pam.c
|
||||||
|
+++ b/source3/winbindd/winbindd_pam.c
|
||||||
|
@@ -3433,12 +3433,17 @@ static NTSTATUS extract_pac_vrfy_sigs(TALLOC_CTX *mem_ctx, DATA_BLOB pac_blob,
|
||||||
|
NULL, /* client_principal */
|
||||||
|
0, /* tgs_authtime */
|
||||||
|
p_pac_data);
|
||||||
|
+ (void)smb_krb5_kt_free_entry(krbctx, &entry);
|
||||||
|
if (NT_STATUS_IS_OK(status)) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
- k5ret = smb_krb5_kt_free_entry(krbctx, &entry);
|
||||||
|
k5ret = krb5_kt_next_entry(krbctx, keytab, &entry, &cursor);
|
||||||
|
}
|
||||||
|
+ if (k5ret != 0 && k5ret != KRB5_KT_END) {
|
||||||
|
+ DEBUG(1, ("Failed to get next entry: %s\n",
|
||||||
|
+ error_message(k5ret)));
|
||||||
|
+ (void)smb_krb5_kt_free_entry(krbctx, &entry);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
k5ret = krb5_kt_end_seq_get(krbctx, keytab, &cursor);
|
||||||
|
if (k5ret) {
|
File diff suppressed because it is too large
Load Diff
|
@ -18,9 +18,6 @@
|
||||||
load printers = yes
|
load printers = yes
|
||||||
cups options = raw
|
cups options = raw
|
||||||
|
|
||||||
# Install samba-usershares package for support
|
|
||||||
include = /etc/samba/usershares.conf
|
|
||||||
|
|
||||||
[homes]
|
[homes]
|
||||||
comment = Home Directories
|
comment = Home Directories
|
||||||
valid users = %S, %D%w%S
|
valid users = %S, %D%w%S
|
||||||
|
|
849
SPECS/samba.spec
849
SPECS/samba.spec
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue