Bug 2547 - Excel fails to open shared workbooks from Samba share
Summary: Excel fails to open shared workbooks from Samba share
Status: CLOSED FIXED
Alias: None
Product: Samba 3.0
Classification: Unclassified
Component: File Services (show other bugs)
Version: 3.0.13
Hardware: x86 FreeBSD
: P3 normal
Target Milestone: none
Assignee: Jeremy Allison
QA Contact: Samba QA Contact
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-03-24 13:41 UTC by Alex Deiter
Modified: 2005-08-24 10:18 UTC (History)
0 users

See Also:


Attachments
Proposed patch. (9.00 KB, patch)
2005-03-24 15:23 UTC, Jeremy Allison
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alex Deiter 2005-03-24 13:41:42 UTC
Two users cannot open shared Excel workbooks in same time, second user got
error: "File blocked. For save changes close it .....". (Excel 2000 on Windows
XP SP2)

log level = 10 :

  change_to_user: Skipping user change - already user
[2005/03/24 23:08:09, 3] smbd/trans2.c:call_trans2setfilepathinfo(3267)
  call_trans2setfilepathinfo(8) xyz-123-test.xls (fnum 11787) info_level=1004
totdata=40
[2005/03/24 23:08:09, 8] smbd/dosmode.c:dos_mode(283)
  dos_mode: xyz-123-test.xls
[2005/03/24 23:08:09, 8] smbd/dosmode.c:dos_mode_from_sbuf(151)
  dos_mode_from_sbuf returning a
[2005/03/24 23:08:09, 8] smbd/dosmode.c:dos_mode(315)
  dos_mode returning a
[2005/03/24 23:08:09, 6] smbd/trans2.c:call_trans2setfilepathinfo(3848)
  actime: Thu Mar 24 23:08:09 2005
   modtime: Thu Mar 24 23:08:09 2005
   size: 22528 dosmode: 0
[2005/03/24 23:08:09, 10] smbd/trans2.c:call_trans2setfilepathinfo(3947)
  call_trans2setfilepathinfo: setting pending modtime to Thu Mar 24 23:08:09 2005

[2005/03/24 23:08:09, 10] smbd/trans2.c:call_trans2setfilepathinfo(3952)
  call_trans2setfilepathinfo: setting utimes to modified values.
[2005/03/24 23:08:09, 3] smbd/error.c:error_packet(105)
  error string = Operation not permitted
[2005/03/24 23:08:09, 3] smbd/error.c:error_packet(129)
  error packet at smbd/trans2.c(3955) cmd=50 (SMBtrans2) NT_STATUS_ACCESS_DENIED
[2005/03/24 23:08:09, 5] lib/util.c:show_msg(464)

Thanks a lot!
Comment 1 Jeremy Allison 2005-03-24 15:23:28 UTC
Created attachment 1112 [details]
Proposed patch.

I think this should fix it. Please test.
Jeremy.
Comment 2 Alex Deiter 2005-03-25 02:11:57 UTC
Thanks! I apply this patch, rebuild samba, but got same error:

  change_to_user: Skipping user change - already user
[2005/03/25 12:08:20, 3] smbd/trans2.c:call_trans2setfilepathinfo(3267)
  call_trans2setfilepathinfo(8) Лист Microsoft Excel.xls (fnum 4256)
info_level=1004 totdata=40
[2005/03/25 12:08:20, 8] smbd/dosmode.c:dos_mode(283)
  dos_mode: Лист Microsoft Excel.xls
[2005/03/25 12:08:20, 8] smbd/dosmode.c:dos_mode_from_sbuf(151)
  dos_mode_from_sbuf returning a
[2005/03/25 12:08:20, 8] smbd/dosmode.c:dos_mode(315)
  dos_mode returning a
[2005/03/25 12:08:20, 6] smbd/trans2.c:call_trans2setfilepathinfo(3848)
  actime: Fri Mar 25 12:08:20 2005
   modtime: Fri Mar 25 12:08:21 2005
   size: 22528 dosmode: 0
[2005/03/25 12:08:20, 10] smbd/trans2.c:call_trans2setfilepathinfo(3947)
  call_trans2setfilepathinfo: setting pending modtime to Fri Mar 25 12:08:21 2005

[2005/03/25 12:08:20, 10] smbd/trans2.c:call_trans2setfilepathinfo(3952)
  call_trans2setfilepathinfo: setting utimes to modified values.
[2005/03/25 12:08:20, 3] smbd/error.c:error_packet(105)
  error string = Operation not permitted
[2005/03/25 12:08:20, 3] smbd/error.c:error_packet(129)
  error packet at smbd/trans2.c(3955) cmd=50 (SMBtrans2) NT_STATUS_ACCESS_DENIED
[2005/03/25 12:08:20, 5] lib/util.c:show_msg(446)
[2005/03/25 12:08:20, 5] lib/util.c:show_msg(456)
Comment 3 Alex Deiter 2005-03-25 02:23:31 UTC
if i set dos filetimes = yes in my smb.conf excel works fine for me.
Comment 4 Jeremy Allison 2005-03-25 10:55:33 UTC
Yes, that's the point. This patch allows "dos filetimes" to work correctly
on a file with ACLs.

I'm going to close this one out.

Jeremy.
Comment 5 Gerald (Jerry) Carter (dead mail address) 2005-08-24 10:18:00 UTC
sorry for the same, cleaning up the database to prevent unecessary reopens of bugs.