I have some trouble with a samba 3.5.8 server when setting directory attributes. On a windows XP I execute a small peace of code that calls 'SetFileAttributes' for the directory 'test-dir' located on the samba server. Using log level 10 I find this:
[2011/05/26 15:27:02.144060, 3] smbd/process.c:1298 (switch_message) switch message SMBtrans2 (pid 28903) conn 0x7f5e35f0dbb0 [2011/05/26 15:27:02.144104, 4] smbd/uid.c:257(change_to_user) change_to_user: Skipping user change - already user [2011/05/26 15:27:02.144153, 3] smbd/trans2.c:7722 (call_trans2setfilepathinfo) call_trans2setfilepathinfo(8) test-dir (fnum 13342) info_level=1004 totdata=40 [2011/05/26 15:27:02.144199, 3] smbd/trans2.c:7320 (smbd_do_setfilepathinfo) smbd_do_setfilepathinfo: test-dir (fnum 13342) info_level=1004 totdata=40 [2011/05/26 15:27:02.144245, 6] smbd/trans2.c:5518(smb_set_file_dosmode) smb_set_file_dosmode: dosmode: 0x90 [2011/05/26 15:27:02.144288, 8] smbd/dosmode.c:613(dos_mode) dos_mode: test-dir [2011/05/26 15:27:02.144332, 8] smbd/dosmode.c:207(dos_mode_from_sbuf) dos_mode_from_sbuf returning d [2011/05/26 15:27:02.144387, 8] smbd/dosmode.c:666(dos_mode) dos_mode returning d [2011/05/26 15:27:02.144431, 10] smbd/trans2.c:5524(smb_set_file_dosmode) smb_set_file_dosmode: file test-dir : setting dos mode 0x90 [2011/05/26 15:27:02.144475, 10] smbd/dosmode.c:701(file_set_dosmode) file_set_dosmode: setting dos mode 0x10 on file test-dir [2011/05/26 15:27:02.144526, 8] smbd/dosmode.c:613(dos_mode) dos_mode: test-dir [2011/05/26 15:27:02.144571, 8] smbd/dosmode.c:207(dos_mode_from_sbuf) dos_mode_from_sbuf returning d [2011/05/26 15:27:02.144615, 8] smbd/dosmode.c:666(dos_mode) dos_mode returning d [2011/05/26 15:27:02.144659, 3] smbd/dosmode.c:166(unix_mode) unix_mode(test-dir) returning 0775 [2011/05/26 15:27:02.144710, 10] modules/vfs_posixacl.c:89 (posixacl_sys_acl_set_file) Calling acl_set_file: test-dir, 0 [2011/05/26 15:27:02.144762, 10] modules/vfs_posixacl.c:108 (posixacl_sys_acl_set_file) acl_set_file failed: Operation not permitted [2011/05/26 15:27:02.144815, 10] smbd/open.c:3381(create_file_default) create_file: access_mask = 0x2 file_attributes = 0x0, share_access = 0x7, create_disposition = 0x1 create_options = 0x0 oplock_request = 0x8 root_dir_fid = 0x0, ea_list = 0x(nil), sd = 0x(nil), fname = test-dir [2011/05/26 15:27:02.144863, 3] smbd/vfs.c:881(check_reduced_name) check_reduced_name [test-dir] [/srv/samba/file-shares/testshare] [2011/05/26 15:27:02.144917, 10] smbd/vfs.c:968(check_reduced_name) check_reduced_name realpath [test-dir] -> [/srv/samba/file-shares/ testshare/test-dir] [2011/05/26 15:27:02.144963, 3] smbd/vfs.c:1038(check_reduced_name) check_reduced_name: test-dir reduced to /srv/samba/file-shares/testshare/ test-dir [2011/05/26 15:27:02.145007, 10] smbd/open.c:2906(create_file_unixpath) create_file_unixpath: access_mask = 0x2 file_attributes = 0x0, share_access = 0x7, create_disposition = 0x1 create_options = 0x0 oplock_request = 0x8 ea_list = 0x(nil), sd = 0x(nil), fname = test-dir [2011/05/26 15:27:02.145055, 5] smbd/files.c:119(file_new) allocated file structure 9247, fnum = 13343 (2 used) [2011/05/26 15:27:02.145101, 3] smbd/dosmode.c:166(unix_mode) unix_mode(test-dir) returning 0764 [2011/05/26 15:27:02.145145, 10] smbd/open.c:1533(open_file_ntcreate) open_file_ntcreate: fname=test-dir, dos_attrs=0x0 access_mask=0x2 share_access=0x7 create_disposition = 0x1 create_options=0x0 unix mode=0764 oplock_request=8 [2011/05/26 15:27:02.145192, 3] smbd/vfs.c:881(check_reduced_name) check_reduced_name [test-dir] [/srv/samba/file-shares/testshare] [2011/05/26 15:27:02.145242, 10] smbd/vfs.c:968(check_reduced_name) check_reduced_name realpath [test-dir] -> [/srv/samba/file-shares/ testshare/test-dir] [2011/05/26 15:27:02.145287, 3] smbd/vfs.c:1038(check_reduced_name) check_reduced_name: test-dir reduced to /srv/samba/file-shares/testshare/ test-dir [2011/05/26 15:27:02.145330, 8] smbd/dosmode.c:613(dos_mode) dos_mode: test-dir [2011/05/26 15:27:02.145374, 8] smbd/dosmode.c:207(dos_mode_from_sbuf) dos_mode_from_sbuf returning d [2011/05/26 15:27:02.145417, 8] smbd/dosmode.c:666(dos_mode) dos_mode returning d [2011/05/26 15:27:02.145460, 10] smbd/open.c:1715(open_file_ntcreate) open_file_ntcreate: fname=test-dir, after mapping access_mask=0x2 [2011/05/26 15:27:02.145510, 10] lib/dbwrap_tdb.c:100(db_tdb_fetch_locked) Locking key 01FE0000000000000160 [2011/05/26 15:27:02.145556, 10] lib/dbwrap_tdb.c:129(db_tdb_fetch_locked) Allocated locked data 0x0x7f5e35f32b60 [2011/05/26 15:27:02.145601, 10] locking/locking.c:552(parse_share_modes) parse_share_modes: delete_on_close: 0, owrt: Thu 26 May 2011 12:18:38 PM CEST CEST, cwrt: Thu 01 Jan 1970 01:00:00 AM CET CET, tok: 0, num_share_modes: 1 [2011/05/26 15:27:02.145661, 10] locking/locking.c:655(parse_share_modes) parse_share_modes: share_mode_entry[0]: pid = 28903, share_access = 0x7, private_options = 0x200000, access_mask = 0x100180, mid = 0x0, type= 0x0, gen_id = 6, uid = 1000, flags = 0, file_id fe01:2d6001:0 [2011/05/26 15:27:02.145706, 10] smbd/open.c:671(share_conflict) share_conflict: entry->access_mask = 0x100180, entry->share_access = 0x7, entry->private_options = 0x200000 [2011/05/26 15:27:02.145732, 10] smbd/open.c:674(share_conflict) share_conflict: access_mask = 0x2, share_access = 0x7 [2011/05/26 15:27:02.145742, 10] smbd/open.c:683(share_conflict) share_conflict: No conflict due to entry->access_mask = 0x100180 [2011/05/26 15:27:02.145751, 4] smbd/open.c:1977(open_file_ntcreate) calling open_file with flags=0x1 flags2=0x0 mode=0764, access_mask = 0x2, open_access_mask = 0x2 [2011/05/26 15:27:02.145766, 10] smbd/open.c:170(fd_open) fd_open: name test-dir, flags = 01 mode = 0764, fd = -1. Is a directory [2011/05/26 15:27:02.145779, 3] smbd/open.c:461(open_file) Error opening file test-dir (NT_STATUS_FILE_IS_A_DIRECTORY) (local_flags=1) (flags=1) As I said, 'test-dir' is a directory. If my understand of the log is correct samba confuses a directory with a file? Why would this happen? Felix -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba