From an XP laptop, I can open and access my samba share normally. I can
read all files and subdirectories in the share, but a fifo I need to read
does not appear at all. I have made the fifo mode 777 (world readable,
writeable, executeable) and tried other things like setting " follow
symlinks = yes ", "unix extensions = no" and "log level = 3", making the
fifo name less than 8 char, but nothing seems to help. If I try to
directly read from the share, from a MSDOS cmdline, with a "type
\\server\myshare\mypipe" I get only an "Access Denied" message.
I have been able to do this for years on other machines, specifically one
running CentOS 5.5, smb version 3.0.33-3.29.el5_6.2
and yes, I can read from the fifo w/o any problem from the linux
commandline. I have also tried to read the fifo via smbclient but get much
the same result (smb: \> get mypipe
NT_STATUS_ACCESS_DENIED opening remote file \mypipe)
OS: CentOS 6 (64 bit)
samba Version: 3.5.4-68.el6_0.2
relevant portions of smb.conf:
log level = 3
unix extensions = no
follow symlinks = yes
security = user
passdb backend = tdbsam
encrypt passwords = yes
[myshare]
comment = my comment
path = /path/to/share
public = yes
writable = yes
browseable = yes
guest ok = yes
write list = charlie
When I attempt to read the pipe from my laptop, the below appears in my
logfile ("/var/log/samba/log.mylaptop"):
[2011/07/19 16:17:23.363416, 3] smbd/process.c:1485(process_smb)
Transaction 63 of length 80 (0 toread)
[2011/07/19 16:17:23.363605, 3] smbd/process.c:1294(switch_message)
switch message SMBtrans2 (pid 8989) conn 0x7ff3f473b110
[2011/07/19 16:17:23.363679, 3] smbd/sec_ctx.c:310(set_sec_ctx)
setting sec ctx (500, 500) - sec_ctx_stack_ndx = 0
[2011/07/19 16:17:23.364132, 3]
smbd/trans2.c:5099(call_trans2qfilepathinfo)
call_trans2qfilepathinfo: TRANSACT2_QPATHINFO: level = 1004
[2011/07/19 16:17:23.364218, 3] smbd/vfs.c:851(check_reduced_name)
check_reduced_name [.] [/path/to/share]
[2011/07/19 16:17:23.364296, 3] smbd/vfs.c:1008(check_reduced_name)
check_reduced_name: . reduced to /path/to/share
[2011/07/19 16:17:23.364483, 3]
smbd/trans2.c:5225(call_trans2qfilepathinfo)
call_trans2qfilepathinfo . (fnum = -1) level=1004 call=5 total_data=0
[2011/07/19 16:17:23.367804, 3] smbd/process.c:1485(process_smb)
Transaction 64 of length 80 (0 toread)
[2011/07/19 16:17:23.367886, 3] smbd/process.c:1294(switch_message)
switch message SMBtrans2 (pid 8989) conn 0x7ff3f473b110
[2011/07/19 16:17:23.367946, 3]
smbd/trans2.c:5099(call_trans2qfilepathinfo)
call_trans2qfilepathinfo: TRANSACT2_QPATHINFO: level = 1005
[2011/07/19 16:17:23.368013, 3] smbd/vfs.c:851(check_reduced_name)
check_reduced_name [.] [/path/to/share]
[2011/07/19 16:17:23.368078, 3] smbd/vfs.c:1008(check_reduced_name)
check_reduced_name: . reduced to /path/to/share
[2011/07/19 16:17:23.368147, 3]
smbd/trans2.c:5225(call_trans2qfilepathinfo)
call_trans2qfilepathinfo . (fnum = -1) level=1005 call=5 total_data=0
[2011/07/19 16:17:23.371384, 3] smbd/process.c:1485(process_smb)
Transaction 65 of length 100 (0 toread)
[2011/07/19 16:17:23.371451, 3] smbd/process.c:1294(switch_message)
switch message SMBtrans2 (pid 8989) conn 0x7ff3f473b110
[2011/07/19 16:17:23.371508, 3] smbd/trans2.c:2252(call_trans2findfirst)
call_trans2findfirst: dirtype = 16, maxentries = 1366,
close_after_first=1, close_if_end = 1 requires_resume_key = 1 level = 0x104,
max_data_bytes = 16384
[2011/07/19 16:17:23.372288, 3] smbd/vfs.c:851(check_reduced_name)
check_reduced_name [mypipe] [/path/to/share]
[2011/07/19 16:17:23.372510, 1] smbd/vfs.c:932(check_reduced_name)
check_reduced_name: couldn't get realpath for mypipe
[2011/07/19 16:17:23.372590, 3] smbd/filename.c:1181(filename_convert)
filename_convert: check_name failed for name mypipe with
NT_STATUS_ACCESS_DENIED
[2011/07/19 16:17:23.372644, 3] smbd/error.c:80(error_packet_set)
error packet at smbd/trans2.c(2305) cmd=50 (SMBtrans2)
NT_STATUS_ACCESS_DENIED
[2011/07/19 16:17:25.339308, 3] smbd/sec_ctx.c:310(set_sec_ctx)
setting sec ctx (0, 0) - sec_ctx_stack_ndx = 0
thx,
-charlie
--
To unsubscribe from this list go to the following URL and read the
instructions: https://lists.samba.org/mailman/options/samba
Since it's been working fine on previous versions of smbd,
I take it that this is a bug that's been fixed?
-charlie
*
*FROM Chris Weiss* *cweiss at gmail.com
<samba%40lists.samba.org?Subject=Re%3A%20%5BSamba%5D%20unix%20fifo%20inaccessible%20via%20samba%20share&In-Reply-To=%3CCAEhO07OWwZDC_W1Md6DckMzxULKnELfq4hYPV86szYb0PG7%3DzQ%40mail.gmail.com%3E>*
**Tue Jul 19 15:40:19 MDT 2011*
>smb and cifs, being Windows inventions, have no concept of a unix
>fifo, there's simply nothing for samba to translate it to/from
On Tue, Jul 19, 2011 at 4:37 PM, Charles Redditt <redcharlie at
gmail.com <https://lists.samba.org/mailman/listinfo/samba>> wrote:
>* Issue: unix fifo (named pipe) does not appear in share, attempts to read*>* the pipe result in "Access Denied"*>**>* From an XP laptop, I can open and access my samba share normally. I can*>* read all files and subdirectories in the share, but a fifo I need to read*>* does not appear at all. I have made the fifo mode 777 (world readable,*>* writeable, executeable) and tried other things like setting " follow*>* symlinks = yes ", "unix extensions = no" and "log level = 3", making the*>* fifo name less than 8 char, but nothing seems to help. If I try to*>* directly read from the share, from a MSDOS cmdline, with a "type*>* \\server\myshare\mypipe" I get only an "Access Denied" message.*>**>* I have been able to do this for years on other machines, specifically one*>* running CentOS 5.5, smb version 3.0.33-3.29.el5_6.2*
Yeah, this should work (it used to). Can you try with
3.5.9 (latest version) and if it doesn't log a bug please ?
Thanks,
Jeremy.
> On Tue, Jul 19, 2011 at 04:37:58PM -0500, Charles Redditt wrote:
> > Issue: unix fifo (named pipe) does not appear in share, attempts to read
> > the pipe result in "Access Denied"
(snip)
> Yeah, this should work (it used to). Can you try with
> 3.5.9 (latest version) and if it doesn't log a bug please ?
I try with 3.5.9 and it works fine.
I'm surprising Samba supports fifo!
1) Compile this program available from http://www.ncad.co.jp/~komata/c-kouza12.htm
-----
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/errno.h>
#include <sys/fcntl.h>
void main()
{
int fd;
char buf[256];
if(mkfifo("FifoTest",0666)==-1){
perror("mkfifo");
}
if((fd=open("FifoTest",O_WRONLY))==-1){
perror("open");
exit(-1);
}
while(1){
fgets(buf,sizeof(buf)-1,stdin);
if(feof(stdin)){
break;
}
write(fd,buf,strlen(buf));
}
close(fd);
}
-----
2) echo testtest | ./a.out
3) mount from Windows XP with "net use"
4) type FifoTest and works fine.
---
TAKAHASHI Motonobu <mo...@samba.gr.jp>
I downloaded the 3.5.9 tarball, compiled and installed as per instructions
in the included howto html docs. But it installed in /usr/local/samba/,
whereas the default CentOS 6 install (3.5.4) is still in /usr/sbin/smbd.
So, it works, but I have to start it manually, so that it's running the
right version and knows where to find the config file. Is there any way I
can get it to install in the RHEL/CentOS set of paths?
thx
-chalire
--
Thanks for using the Albert Gore Jr. Information Superhighway. Please post
responsibly. Happy Cerf-ing!
It would be easier to try these packages:
http://ftp.sernet.de/pub/samba/3.5/rhel/5/
--
Michael Wood <esio...@gmail.com>