IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
Passes against Win2k12+, and smbd with the previous patch.
https://bugzilla.samba.org/show_bug.cgi?id=11845
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Alexander Bokovoy <ab@samba.org>
Autobuild-User(master): Alexander Bokovoy <ab@samba.org>
Autobuild-Date(master): Sat Jun 18 19:32:22 CEST 2016 on sn-devel-144
smbtorture test raw.offline.offline generates the following valgrind trace(s).
==5130== at 0x2223AF: loadfile_callback (offline.c:107)
==5130== by 0x5AF73E6: loadfile_handler (loadfile.c:208)
==5130== by 0x5ADFEE0: smbcli_request_done (clitransport.c:395)
==5130== by 0xF676EEE: tevent_common_loop_timer_delay (in /usr/lib64/libtevent.so.0.9.26)
==5130== by 0xF677EF9: ??? (in /usr/lib64/libtevent.so.0.9.26)
==5130== by 0xF6765F6: ??? (in /usr/lib64/libtevent.so.0.9.26)
==5130== by 0xF6727FC: _tevent_loop_once (in /usr/lib64/libtevent.so.0.9.26)
==5130== by 0x223A16: torture_test_offline (offline.c:493)
==5130== by 0x9553F62: wrap_simple_test (torture.c:632)
==5130== by 0x955368F: internal_torture_run_test (torture.c:442)
==5130== by 0x9553A6B: torture_run_test_restricted (torture.c:542)
==5130== by 0x260121: run_matching (smbtorture.c:110)
==5130== by 0x25FFE3: run_matching (smbtorture.c:95)
==5130== by 0x260242: torture_run_named_tests (smbtorture.c:143)
==5130== by 0x261EC1: main (smbtorture.c:665)
==5130== Address 0x188b80d0 is 96 bytes inside a block of size 8,288 free'd
==5130== at 0x4C2A37C: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==5130== by 0xF4673A3: ??? (in /usr/lib64/libtalloc.so.2.1.5)
==5130== by 0xF460E42: _talloc_free (in /usr/lib64/libtalloc.so.2.1.5)
==5130== by 0x5AF7635: smb_composite_loadfile_recv (loadfile.c:278)
==5130== by 0x2222F7: loadfile_callback (offline.c:91)
==5130== by 0x5AF73E6: loadfile_handler (loadfile.c:208)
==5130== by 0x5ADFEE0: smbcli_request_done (clitransport.c:395)
==5130== by 0xF676EEE: tevent_common_loop_timer_delay (in /usr/lib64/libtevent.so.0.9.26)
==5130== by 0xF677EF9: ??? (in /usr/lib64/libtevent.so.0.9.26)
==5130== by 0xF6765F6: ??? (in /usr/lib64/libtevent.so.0.9.26)
==5130== by 0xF6727FC: _tevent_loop_once (in /usr/lib64/libtevent.so.0.9.26)
==5130== by 0x223A16: torture_test_offline (offline.c:493)
==5130== by 0x9553F62: wrap_simple_test (torture.c:632)
==5130== by 0x955368F: internal_torture_run_test (torture.c:442)
==5130== by 0x9553A6B: torture_run_test_restricted (torture.c:542)
==5130== by 0x260121: run_matching (smbtorture.c:110)
==5130== by 0x25FFE3: run_matching (smbtorture.c:95)
==5130== by 0x260242: torture_run_named_tests (smbtorture.c:143)
==5130== by 0x261EC1: main (smbtorture.c:665)
==5130==
AND
==5428== Conditional jump or move depends on uninitialised value(s)
==5428== at 0x22270E: getoffline_callback (offline.c:197)
==5428== by 0x5ADFEE0: smbcli_request_done (clitransport.c:395)
==5428== by 0xF676EEE: tevent_common_loop_timer_delay (in /usr/lib64/libtevent.so.0.9.26)
==5428== by 0xF677EF9: ??? (in /usr/lib64/libtevent.so.0.9.26)
==5428== by 0xF6765F6: ??? (in /usr/lib64/libtevent.so.0.9.26)
==5428== by 0xF6727FC: _tevent_loop_once (in /usr/lib64/libtevent.so.0.9.26)
==5428== by 0x223A1B: torture_test_offline (offline.c:494)
==5428== by 0x9553F62: wrap_simple_test (torture.c:632)
==5428== by 0x955368F: internal_torture_run_test (torture.c:442)
==5428== by 0x9553A6B: torture_run_test_restricted (torture.c:542)
==5428== by 0x260126: run_matching (smbtorture.c:110)
==5428== by 0x25FFE8: run_matching (smbtorture.c:95)
==5428== by 0x260247: torture_run_named_tests (smbtorture.c:143)
==5428== by 0x261EC6: main (smbtorture.c:665)
==5428==
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
smbtorture test raw.bench-tcon.bench-tcon produces the following valgrind
trace
==32163== Conditional jump or move depends on uninitialised value(s)
==32163== at 0x1F9D61: rate_convert_secs (tconrate.c:149)
==32163== by 0x1FA04C: torture_bench_treeconnect (tconrate.c:189)
==32163== by 0x9553F62: wrap_simple_test (torture.c:632)
==32163== by 0x955368F: internal_torture_run_test (torture.c:442)
==32163== by 0x9553A6B: torture_run_test_restricted (torture.c:542)
==32163== by 0x260121: run_matching (smbtorture.c:110)
==32163== by 0x25FFE3: run_matching (smbtorture.c:95)
==32163== by 0x260242: torture_run_named_tests (smbtorture.c:143)
==32163== by 0x261EC1: main (smbtorture.c:665)
==32163==
==32163== Use of uninitialised value of size 8
==32163== at 0xFB0B0BB: _itoa_word (in /lib64/libc-2.19.so)
==32163== by 0xFB0EAD2: vfprintf (in /lib64/libc-2.19.so)
==32163== by 0xFB15598: printf (in /lib64/libc-2.19.so)
==32163== by 0x1FA064: torture_bench_treeconnect (tconrate.c:188)
==32163== by 0x9553F62: wrap_simple_test (torture.c:632)
==32163== by 0x955368F: internal_torture_run_test (torture.c:442)
==32163== by 0x9553A6B: torture_run_test_restricted (torture.c:542)
==32163== by 0x260121: run_matching (smbtorture.c:110)
==32163== by 0x25FFE3: run_matching (smbtorture.c:95)
==32163== by 0x260242: torture_run_named_tests (smbtorture.c:143)
==32163== by 0x261EC1: main (smbtorture.c:665)
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
smbtorture test raw.acls.create_file.create_file produces the following
valgrind trace
==31783== Use of uninitialised value of size 8
==31783== at 0xFB0B061: _itoa_word (in /lib64/libc-2.19.so)
==31783== by 0xFB0EAD2: vfprintf (in /lib64/libc-2.19.so)
==31783== by 0xFB36712: vasprintf (in /lib64/libc-2.19.so)
==31783== by 0xAEBB348: ndr_print_debug_helper (ndr.c:314)
==31783== by 0xAEB8ED1: ndr_print_uint16 (ndr_basic.c:1055)
==31783== by 0x3E591A: ndr_print_security_ace (ndr_security.c:539)
==31783== by 0x3E621A: ndr_print_security_acl (ndr_security.c:642)
==31783== by 0x3E7A3F: ndr_print_security_descriptor (ndr_security.c:890)
==31783== by 0xAEBB860: ndr_print_debug (ndr.c:409)
==31783== by 0x20C91F: verify_sd (acls.c:89)
==31783== by 0x20D8C3: test_nttrans_create_ext (acls.c:306)
==31783== by 0x20E3A8: test_nttrans_create_file (acls.c:381)
==31783== by 0x16B21D: wrap_simple_1smb_test (util_smb.c:856)
==31783== by 0x955368F: internal_torture_run_test (torture.c:442)
==31783== by 0x9553A6B: torture_run_test_restricted (torture.c:542)
==31783== by 0x260108: run_matching (smbtorture.c:110)
==31783== by 0x25FFCA: run_matching (smbtorture.c:95)
==31783== by 0x25FFCA: run_matching (smbtorture.c:95)
==31783== by 0x260229: torture_run_named_tests (smbtorture.c:143)
==31783== by 0x261EA8: main (smbtorture.c:665)
==31783==
==31783== Conditional jump or move depends on uninitialised value(s)
==31783== at 0xFB0B068: _itoa_word (in /lib64/libc-2.19.so)
==31783== by 0xFB0EAD2: vfprintf (in /lib64/libc-2.19.so)
==31783== by 0xFB36712: vasprintf (in /lib64/libc-2.19.so)
==31783== by 0xAEBB348: ndr_print_debug_helper (ndr.c:314)
==31783== by 0xAEB8ED1: ndr_print_uint16 (ndr_basic.c:1055)
==31783== by 0x3E591A: ndr_print_security_ace (ndr_security.c:539)
==31783== by 0x3E621A: ndr_print_security_acl (ndr_security.c:642)
==31783== by 0x3E7A3F: ndr_print_security_descriptor (ndr_security.c:890)
==31783== by 0xAEBB860: ndr_print_debug (ndr.c:409)
==31783== by 0x20C91F: verify_sd (acls.c:89)
==31783== by 0x20D8C3: test_nttrans_create_ext (acls.c:306)
==31783== by 0x20E3A8: test_nttrans_create_file (acls.c:381)
==31783== by 0x16B21D: wrap_simple_1smb_test (util_smb.c:856)
==31783== by 0x955368F: internal_torture_run_test (torture.c:442)
==31783== by 0x9553A6B: torture_run_test_restricted (torture.c:542)
==31783== by 0x260108: run_matching (smbtorture.c:110)
==31783== by 0x25FFCA: run_matching (smbtorture.c:95)
==31783== by 0x25FFCA: run_matching (smbtorture.c:95)
==31783== by 0x260229: torture_run_named_tests (smbtorture.c:143)
==31783== by 0x261EA8: main (smbtorture.c:665)
==31783==
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
running smbtorture test raw.streams.createdisp.createdisp results in
the following valgrind trace
==30946== Syscall param writev(vector[...]) points to uninitialised byte(s)
==30946== at 0xFBA2C87: writev (in /lib64/libc-2.19.so)
==30946== by 0x106CB033: writev_handler (async_sock.c:340)
==30946== by 0xF67812A: ??? (in /usr/lib64/libtevent.so.0.9.26)
==30946== by 0xF6765F6: ??? (in /usr/lib64/libtevent.so.0.9.26)
==30946== by 0xF6727FC: _tevent_loop_once (in /usr/lib64/libtevent.so.0.9.26)
==30946== by 0x5AE3400: smbcli_request_receive (rawrequest.c:416)
==30946== by 0x5AE343E: smbcli_request_simple_recv (rawrequest.c:430)
==30946== by 0x5ADC8BC: smb_raw_close (rawfile.c:847)
==30946== by 0x9BE60B4: smbcli_close (clifile.c:316)
==30946== by 0x209F0D: create_file_with_stream (streams.c:1502)
==30946== by 0x20A072: test_stream_create_disposition (streams.c:1527)
==30946== by 0x16B21D: wrap_simple_1smb_test (util_smb.c:856)
==30946== by 0x955368F: internal_torture_run_test (torture.c:442)
==30946== by 0x9553A6B: torture_run_test_restricted (torture.c:542)
==30946== by 0x2600D6: run_matching (smbtorture.c:110)
==30946== by 0x25FF98: run_matching (smbtorture.c:95)
==30946== by 0x25FF98: run_matching (smbtorture.c:95)
==30946== by 0x2601F7: torture_run_named_tests (smbtorture.c:143)
==30946== by 0x261E76: main (smbtorture.c:665)
==30946== Address 0x187ebbc6 is 598 bytes inside a block of size 1,325 alloc'd
==30946== at 0x4C29110: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==30946== by 0xF464A73: _talloc_pooled_object (in /usr/lib64/libtalloc.so.2.1.5)
==30946== by 0xF67366D: _tevent_req_create (in /usr/lib64/libtevent.so.0.9.26)
==30946== by 0xB0D49FF: smb1cli_req_create (smbXcli_base.c:1322)
==30946== by 0x5ADFAB7: smbcli_transport_setup_subreq (clitransport.c:254)
==30946== by 0x5ADFC37: smbcli_transport_send (clitransport.c:326)
==30946== by 0x5AE33C3: smbcli_request_send (rawrequest.c:400)
==30946== by 0x5ADC869: smb_raw_close_send (rawfile.c:832)
==30946== by 0x5ADC8AC: smb_raw_close (rawfile.c:846)
==30946== by 0x9BE60B4: smbcli_close (clifile.c:316)
==30946== by 0x209F0D: create_file_with_stream (streams.c:1502)
==30946== by 0x20A072: test_stream_create_disposition (streams.c:1527)
==30946== by 0x16B21D: wrap_simple_1smb_test (util_smb.c:856)
==30946== by 0x955368F: internal_torture_run_test (torture.c:442)
==30946== by 0x9553A6B: torture_run_test_restricted (torture.c:542)
==30946== by 0x2600D6: run_matching (smbtorture.c:110)
==30946== by 0x25FF98: run_matching (smbtorture.c:95)
==30946== by 0x25FF98: run_matching (smbtorture.c:95)
==30946== by 0x2601F7: torture_run_named_tests (smbtorture.c:143)
==30946== by 0x261E76: main (smbtorture.c:665
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
running smbtorture test raw.open.openx-over-dir.openx-over-dir results in
the following valgrind trace
==30597== Syscall param writev(vector[...]) points to uninitialised byte(s)
==30597== at 0xFBA2C87: writev (in /lib64/libc-2.19.so)
==30597== by 0x106CB033: writev_handler (async_sock.c:340)
==30597== by 0xF67812A: ??? (in /usr/lib64/libtevent.so.0.9.26)
==30597== by 0xF6765F6: ??? (in /usr/lib64/libtevent.so.0.9.26)
==30597== by 0xF6727FC: _tevent_loop_once (in /usr/lib64/libtevent.so.0.9.26)
==30597== by 0x5AE3400: smbcli_request_receive (rawrequest.c:416)
==30597== by 0x5AE343E: smbcli_request_simple_recv (rawrequest.c:430)
==30597== by 0x5ADC8BC: smb_raw_close (rawfile.c:847)
==30597== by 0x9BE60B4: smbcli_close (clifile.c:316)
==30597== by 0x1A57F0: test_openx_over_dir (open.c:1495)
==30597== by 0x16B21D: wrap_simple_1smb_test (util_smb.c:856)
==30597== by 0x955368F: internal_torture_run_test (torture.c:442)
==30597== by 0x9553A6B: torture_run_test_restricted (torture.c:542)
==30597== by 0x2600BD: run_matching (smbtorture.c:110)
==30597== by 0x25FF7F: run_matching (smbtorture.c:95)
==30597== by 0x25FF7F: run_matching (smbtorture.c:95)
==30597== by 0x2601DE: torture_run_named_tests (smbtorture.c:143)
==30597== by 0x261E5D: main (smbtorture.c:665)
==30597== Address 0x187e41d6 is 598 bytes inside a block of size 1,325 alloc'd
==30597== at 0x4C29110: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==30597== by 0xF464A73: _talloc_pooled_object (in /usr/lib64/libtalloc.so.2.1.5)
==30597== by 0xF67366D: _tevent_req_create (in /usr/lib64/libtevent.so.0.9.26)
==30597== by 0xB0D49FF: smb1cli_req_create (smbXcli_base.c:1322)
==30597== by 0x5ADFAB7: smbcli_transport_setup_subreq (clitransport.c:254)
==30597== by 0x5ADFC37: smbcli_transport_send (clitransport.c:326)
==30597== by 0x5AE33C3: smbcli_request_send (rawrequest.c:400)
==30597== by 0x5ADC869: smb_raw_close_send (rawfile.c:832)
==30597== by 0x5ADC8AC: smb_raw_close (rawfile.c:846)
==30597== by 0x9BE60B4: smbcli_close (clifile.c:316)
==30597== by 0x1A57F0: test_openx_over_dir (open.c:1495)
==30597== by 0x16B21D: wrap_simple_1smb_test (util_smb.c:856)
==30597== by 0x955368F: internal_torture_run_test (torture.c:442)
==30597== by 0x9553A6B: torture_run_test_restricted (torture.c:542)
==30597== by 0x2600BD: run_matching (smbtorture.c:110)
==30597== by 0x25FF7F: run_matching (smbtorture.c:95)
==30597== by 0x25FF7F: run_matching (smbtorture.c:95)
==30597== by 0x2601DE: torture_run_named_tests (smbtorture.c:143)
==30597== by 0x261E5D: main (smbtorture.c:665)
==30597==
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
running smbtorture test raw.open.chained-ntcreatex.chained-ntcreatex results
in the following valgrind trace
==30405== Syscall param writev(vector[...]) points to uninitialised byte(s)
==30405== at 0xFBA2C87: writev (in /lib64/libc-2.19.so)
==30405== by 0x106CB033: writev_handler (async_sock.c:340)
==30405== by 0xF67812A: ??? (in /usr/lib64/libtevent.so.0.9.26)
==30405== by 0xF6765F6: ??? (in /usr/lib64/libtevent.so.0.9.26)
==30405== by 0xF6727FC: _tevent_loop_once (in /usr/lib64/libtevent.so.0.9.26)
==30405== by 0x5AE3400: smbcli_request_receive (rawrequest.c:416)
==30405== by 0x5AE343E: smbcli_request_simple_recv (rawrequest.c:430)
==30405== by 0x5ADC8BC: smb_raw_close (rawfile.c:847)
==30405== by 0x9BE60B4: smbcli_close (clifile.c:316)
==30405== by 0x1A66B4: test_chained_ntcreatex_readx (open.c:1735)
==30405== by 0x16B21D: wrap_simple_1smb_test (util_smb.c:856)
==30405== by 0x955368F: internal_torture_run_test (torture.c:442)
==30405== by 0x9553A6B: torture_run_test_restricted (torture.c:542)
==30405== by 0x2600A4: run_matching (smbtorture.c:110)
==30405== by 0x25FF66: run_matching (smbtorture.c:95)
==30405== by 0x25FF66: run_matching (smbtorture.c:95)
==30405== by 0x2601C5: torture_run_named_tests (smbtorture.c:143)
==30405== by 0x261E44: main (smbtorture.c:665)
==30405== Address 0x187e1196 is 598 bytes inside a block of size 1,325 alloc'd
==30405== at 0x4C29110: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==30405== by 0xF464A73: _talloc_pooled_object (in /usr/lib64/libtalloc.so.2.1.5)
==30405== by 0xF67366D: _tevent_req_create (in /usr/lib64/libtevent.so.0.9.26)
==30405== by 0xB0D49FF: smb1cli_req_create (smbXcli_base.c:1322)
==30405== by 0x5ADFAB7: smbcli_transport_setup_subreq (clitransport.c:254)
==30405== by 0x5ADFC37: smbcli_transport_send (clitransport.c:326)
==30405== by 0x5AE33C3: smbcli_request_send (rawrequest.c:400)
==30405== by 0x5ADC869: smb_raw_close_send (rawfile.c:832)
==30405== by 0x5ADC8AC: smb_raw_close (rawfile.c:846)
==30405== by 0x9BE60B4: smbcli_close (clifile.c:316)
==30405== by 0x1A66B4: test_chained_ntcreatex_readx (open.c:1735)
==30405== by 0x16B21D: wrap_simple_1smb_test (util_smb.c:856)
==30405== by 0x955368F: internal_torture_run_test (torture.c:442)
==30405== by 0x9553A6B: torture_run_test_restricted (torture.c:542)
==30405== by 0x2600A4: run_matching (smbtorture.c:110)
==30405== by 0x25FF66: run_matching (smbtorture.c:95)
==30405== by 0x25FF66: run_matching (smbtorture.c:95)
==30405== by 0x2601C5: torture_run_named_tests (smbtorture.c:143)
==30405== by 0x261E44: main (smbtorture.c:665)
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Fri Nov 6 13:43:45 CET 2015 on sn-devel-104
This is in line with the recursive updates before.
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Mon Jul 13 15:00:26 CEST 2015 on sn-devel-104
Only change currently: the CHECK_WSTR calls report the line
number of this function now instead of the handed in
line of the callers. This could be fixed by turning this
function into a macro...
Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
The original CHECK_WSTR() macro was not setting torture failure,
leading to errors instead of propoer failures.
The original CHECK_WSTR2() macro was exactly like the CHECK_WSTR
macro but using propoer torture_result() calls.
This patch removes the original CHECK_WSTR(), renames CHECK_WSTR2
to CHECK_WSTR and adapts the callers, hence removing the source
of many potential missing torture_assert messages.
Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
This macro is not setting torture failure, leading to errors instead
of failures. Use torture_assert_ntstatus_(ok|equal)* macros.
Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
This macro is not setting torture failure, leading to errors instead
of failures. Use torture_assert_ntstatus_(ok|equal)* macros.
Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
sizeof(buf) is 5. On FreeBSD10/clang this overwrites "ret". Not good.
Same as 574750777a
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Tue Dec 9 19:43:31 CET 2014 on sn-devel-104
sizeof(buf) is 5. On FreeBSD10/clang this overwrites "ret". Not good.
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>
Autobuild-User(master): Ralph Böhme <slow@samba.org>
Autobuild-Date(master): Fri Nov 28 13:30:18 CET 2014 on sn-devel-104
Shows attribute(stat) access open can create a file,
and subsequent attribute(stat) opens don't break oplocks.
Can be extended to explore more varients.
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
The issue is that previously bad_ea_name[5] was the last element on
the array, and so when we later did a strlen() on it, we read past the
end of the stack array. We need bad_ea_name[5] to be the second-last
element, followed by the \0 placed there by the strlcpy().
Found by AddressSanitizer
Change-Id: I871c08200aa2591c612dfa44da92b83132f83d88
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Kamen Mazdrashki <kamenim@samba.org>
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Thu Sep 11 08:50:16 CEST 2014 on sn-devel-104
This changes the sizeof(buf) from sizeof(void *), 8 on 64-bit machines, to sizeof("test") (eg 5).
Found by AddressSanitizer
Andrew Bartlett
Change-Id: I01f18b35c041f3b16be9f6da8ae5d1917d7e24d9
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Kamen Mazdrashki <kamenim@samba.org>
MS-CIFS requires a one byte pad to guarantee 16 bit alignment of the
data:
Pad (1 byte): This field is optional. When using the NT LAN Manager
dialect, this field can be used to align the Data field to a 16-bit
boundary relative to the start of the SMB Header. If Unicode strings are
being used, this field MUST be present. When used, this field MUST be
one padding byte long.
Signed-off-by: Christof Schmitt <cs@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Needed as there was a proposal to re-architect
our multi-lock to dispense with lock order precedence,
which isn't how Windows does it (unfortunately,
as the new code would have been cleaner :-).
Tested against the Win2k12 SMB1 implementation.
This test is designed to show that
lock precedence on the server is based
on the order received, not on the ability
to grant. For example:
A blocked lock request containing 2 locks
will be satified before a subsequent blocked
lock request over one of the same regions,
even if that region is then unlocked. E.g.
(a) lock 100->109, 120->129 (granted)
(b) lock 100->109, 120-129 (blocks)
(c) lock 100->109 (blocks)
(d) unlock 100->109
lock (c) will not be granted as lock (b)
will take precedence.
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Tue Jul 8 10:16:59 CEST 2014 on sn-devel-104
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Autobuild-User(master): David Disseldorp <ddiss@samba.org>
Autobuild-Date(master): Wed Jun 25 13:37:24 CEST 2014 on sn-devel-104
Adds a new test to raw.open.
Opens a file with SHARE_NONE, writes 1 byte at offset 1023,
attempts a second open with r/w access+truncate disposition,
then checks that open fails with SHARING_VIOLATION, and
the file is not truncated (is still size 1024). Correctly
detects the bug and fixed smbd for me.
https://bugzilla.samba.org/show_bug.cgi?id=10671
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>