[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] SAMBA support in QEMU
From: |
Bernhard Huafbauer |
Subject: |
Re: [Qemu-devel] SAMBA support in QEMU |
Date: |
Tue, 21 Dec 2004 23:13:18 +0100 |
User-agent: |
KMail/1.6.2 |
Hello,
think I found it ... (wasn't as easy as the port thing)
short before going crazy I called smbd with strace
it showed me two socket funcion calls - the first with a
matching close
...
16790 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4
16790 ioctl(4, 0x8912, 0xbfffbdf8) = 0
16790 ioctl(4, 0x8915, 0xbfffbe20) = 0
16790 ioctl(4, 0x8913, 0xbfffbe20) = 0
16790 ioctl(4, 0x891b, 0xbfffbe20) = 0
16790 ioctl(4, 0x8915, 0xbfffbe00) = 0
16790 ioctl(4, 0x8913, 0xbfffbe00) = 0
16790 ioctl(4, 0x891b, 0xbfffbe00) = 0
16790 close(4) = 0
...
the second not
...
16790 socket(PF_UNIX, SOCK_DGRAM, 0) = 6
...
so I called smbd with gdb and set a
breakpoint to socket - continued the first time and the second
time the backtrace looked like this:
Breakpoint 2, 0x4035ff90 in socket () from /lib/tls/libc.so.6
(gdb) bt
#0 0x4035ff90 in socket () from /lib/tls/libc.so.6
#1 0x4035b12c in openlog_internal () from /lib/tls/libc.so.6
#2 0x4035b6cb in vsyslog () from /lib/tls/libc.so.6
#3 0x4035b24f in syslog () from /lib/tls/libc.so.6
#4 0x081da12c in Debug1 ()
#5 0x081da476 in dbghdr ()
#6 0x08267784 in main ()
(gdb) kill
by searching Debug1 in samba source I found
that by starting samba with option -i (interactive)
this syslog calls are not done and no datagram connection is opened -
but I cannot access now my share from the guest os - not so good ...
then another way - setting in the config file a entry "syslog = 0" helps
so my function "net_slirp_smb" looks now like this (and I can access
\\10.0.2.4\qemu):
fprintf(f,
"[global]\n"
"private dir=%s\n"
"smb ports=0\n"
"socket address=127.0.0.1\n"
"syslog = 0\n"
"pid directory=%s\n"
"lock directory=%s\n"
"log file=%s/log.smbd\n"
"smb passwd file=%s/smbpasswd\n"
"security = share\n"
"[qemu]\n"
"path=%s\n"
"read only=no\n"
"guest ok=yes\n",
smb_dir,
smb_dir,
smb_dir,
smb_dir,
smb_dir,
exported_dir
);
(To my sidenote from my last mail:
This will delete this "printing" directory in the /tmp/qemu-smb.xxx directory
in smb_exit before "rmdir(smb_dir);":
snprintf(filename, sizeof(filename), "%s/%s",
smb_dir, "printing");
rmdir(filename);
)
Regards
Bernhard
Am Dienstag, 21. Dezember 2004 00:14 schrieb Fabrice Bellard:
> OK. 'smb ports=0' seems a good idea. Can you find why there is still a
> datagram connection opened ?
>
> I still wonder if the best solution would be to ship a specific smbd
> version with QEMU...
>
> Fabrice.
>
> Bernhard Huafbauer wrote:
> > Hello,
> > I found nothing about disabling the opening of the ports
> > in the man page of the smb.conf.
> > The only thing I have found to prevent smbd to open a port is
> > to give a config file with one of these lines:
> >
> > smb ports=" "
> > smb ports=' '
> > smb ports=0
> >
> > the samba source file /source/smbd/server.c line 242 (version 3.0.2a-SUSE)
> > look like this:
> > ...
> > for (ptr=ports; next_token(&ptr, tok, NULL,
> > sizeof(tok)); ) {
> > unsigned port = atoi(tok);
> > if (port == 0) continue;
> > s = fd_listenset[num_sockets] =
> > open_socket_in(SOCK_STREAM, port, 0, ifip->s_addr, True);
> > ...
> > ...
> > for (ptr=ports; next_token(&ptr, tok, NULL, sizeof(tok)); ) {
> > unsigned port = atoi(tok);
> > if (port == 0) continue;
> > /* open an incoming socket */
> > s = open_socket_in(SOCK_STREAM, port, 0,
> > ...
> >
> > Interesting the comparison to 0 and the continue ...
> > so setting it to 0 would be best the way?
> >
> > with this setting a smbd called by hand doesn't open any port except this
> > DGRAM thing
> > address@hidden:/tmp/qemu-smb.8091> ps aux | grep smbd | grep -v grep
> > bernhard 10087 0.0 0.5 9912 2800 ? Ss 21:16 0:00
> > /usr/sbin/smbd -s /tmp/qemu-smb.8091/smb.conf
> >
> > address@hidden:/tmp/qemu-smb.8091> netstat -anp | grep 10087
> > unix 2 [ ] DGRAM 23644 10087/smbd
> >
> > when running qemu with this setting and accessing \\10.0.2.4\qemu
> > address@hidden:/tmp> ps aux | grep smbd
> > bernhard 11976 0.0 0.0 0 0 ? Z 22:02 0:00 [smbd]
> > <defunct>
> > bernhard 12012 0.0 0.0 0 0 ? Z 22:03 0:00 [smbd]
> > <defunct>
> > bernhard 12045 0.1 0.6 10984 3492 ? S 22:03 0:00
> > /usr/sbin/smbd -s /tmp/qemu-smb.11876/smb.conf
> > bernhard 12064 0.0 0.1 2648 736 pts/1 S+ 22:04 0:00 grep smbd
> >
> > and sometimes somthing like this (?):
> > address@hidden:/tmp> netstat -anp | grep 12045
> > tcp 0 0 127.0.0.1:1357 127.0.0.1:1356
> > VERBUNDEN 12045/smbd
> > udp 0 0 127.0.0.1:1156 0.0.0.0:*
> > 12045/smbd
> >
> >
> > (As a sidenote:
> > the smb_exit cleans not all of the temp directory
> > there is still a directory printing so the last rmdir
> > call fails and a /tmp/qemu-smb.10542/printing/ remains.)
> >
> > Regards
> > Bernhard
> >
> >
> > Am Montag, 20. Dezember 2004 00:40 schrieb Fabrice Bellard:
> >
> >>Hi,
> >>
> >>It would be cleaner to find a way to disable the access to the port 445
> >>(it seems to be an uneeded feature for QEMU and your patch may not work
> >>if several instances of QEMU are launched). Can you look at the SAMBA
> >>documentation to see if there is an option to do that ?
> >>
> >>Fabrice.
> >>
> >>Bernhard Huafbauer wrote:
> >>
> >>>Hello,
> >>>
> >>>With this little changes to the samba configuration
> >>>file I was able to access the share from the guest os
> >>>(winxp-oem-german-nosp, samba 3.0.2a-SUSE)
> >>>
> >>>Don't know how it would affect some samba 2.x installations ...
> >>>
> >>>The entry smb ports is because smbd wants to open port 445
> >>>(an I'm not allowed to as user).
> >>>
> >>>Regards,
> >>>Bernhard
> >>>
> >>>Am Donnerstag, 9. Dezember 2004 22:34 schrieb Adrian Smarzewski:
> >>>
> >>>
> >>>>David Still wrote:
> >>>>
> >>>>
> >>>>>This could also be why SAMBA support does not appear to work on Mac OS
> >>>>>X. Version 10.3.6 appears to use SAMBA version 3.0.5.
> >>>>
> >>>>3.0 was released more than year ago I think...
> >>>>Maybe It's more important to support 3.0.x than 2.x now.
> >>>>
> >>>
> >>>
> >>>address@hidden:~/projekte/software/qemu> diff -Nru orig/qemu-cvs/qemu/vl.c
> >>>qemu-cvs/qemu/vl.c
> >>>--- orig/qemu-cvs/qemu/vl.c 2004-12-17 21:10:34.000000000 +0100
> >>>+++ qemu-cvs/qemu/vl.c 2004-12-19 15:44:27.501826076 +0100
> >>>@@ -1535,6 +1535,9 @@
> >>> }
> >>> fprintf(f,
> >>> "[global]\n"
> >>>+ "private dir=%s\n"
> >>>+ "smb ports=2445 2139\n"
> >>>+ "socket address=127.0.0.1\n"
> >>> "pid directory=%s\n"
> >>> "lock directory=%s\n"
> >>> "log file=%s/log.smbd\n"
> >>>@@ -1548,6 +1551,7 @@
> >>> smb_dir,
> >>> smb_dir,
> >>> smb_dir,
> >>>+ smb_dir,
> >>> exported_dir
> >>> );
> >>> fclose(f);
> >>>
> >>>
> >>>_______________________________________________
> >>>Qemu-devel mailing list
> >>>address@hidden
> >>>http://lists.nongnu.org/mailman/listinfo/qemu-devel
> >>>
> >>>
> >>>
> >>
> >>
> >>
> >>_______________________________________________
> >>Qemu-devel mailing list
> >>address@hidden
> >>http://lists.nongnu.org/mailman/listinfo/qemu-devel
> >>
> >
> >
> >
> > _______________________________________________
> > Qemu-devel mailing list
> > address@hidden
> > http://lists.nongnu.org/mailman/listinfo/qemu-devel
> >
> >
> >
>
>
>
> _______________________________________________
> Qemu-devel mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/qemu-devel
>
- Re: [Qemu-devel] SAMBA support in QEMU, (continued)
- Re: [Qemu-devel] SAMBA support in QEMU, Adrian Smarzewski, 2004/12/08
- Re: [Qemu-devel] SAMBA support in QEMU, Felipe Sanchez, 2004/12/08
- Re: [Qemu-devel] SAMBA support in QEMU, Fabrice Bellard, 2004/12/08
- Re: [Qemu-devel] SAMBA support in QEMU, carlo . andreoli, 2004/12/09
- Re: [Qemu-devel] SAMBA support in QEMU, David Still, 2004/12/09
- Re: [Qemu-devel] SAMBA support in QEMU, Adrian Smarzewski, 2004/12/09
- Re: [Qemu-devel] SAMBA support in QEMU, Bernhard Huafbauer, 2004/12/19
- Re: [Qemu-devel] SAMBA support in QEMU, Fabrice Bellard, 2004/12/19
- Re: [Qemu-devel] SAMBA support in QEMU, Bernhard Huafbauer, 2004/12/20
- Re: [Qemu-devel] SAMBA support in QEMU, Fabrice Bellard, 2004/12/20
- Re: [Qemu-devel] SAMBA support in QEMU,
Bernhard Huafbauer <=