Message ID | 20110902205328.GA1142@rox.home.comstyle.com |
---|---|
State | New |
Headers | show |
On Fri, Sep 2, 2011 at 9:53 PM, Brad <brad@comstyle.com> wrote: > Allow overriding the location of Samba's smbd. > > Pretty much every OS I look at has some means of > changing this path (patching) so lets just make > it easier for OS developers creating packages > and/or end users to override the location. > > Signed-off-by: Brad Smith <brad@comstyle.com> > > --- > configure | 9 +++++++++ > net.h | 5 ----- > net/slirp.c | 2 +- > qemu-options.hx | 6 +++--- > 4 files changed, 13 insertions(+), 9 deletions(-) Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Thanks, applied. On Fri, Sep 2, 2011 at 8:53 PM, Brad <brad@comstyle.com> wrote: > Allow overriding the location of Samba's smbd. > > Pretty much every OS I look at has some means of > changing this path (patching) so lets just make > it easier for OS developers creating packages > and/or end users to override the location. > > Signed-off-by: Brad Smith <brad@comstyle.com> > > --- > configure | 9 +++++++++ > net.h | 5 ----- > net/slirp.c | 2 +- > qemu-options.hx | 6 +++--- > 4 files changed, 13 insertions(+), 9 deletions(-) > > diff --git a/configure b/configure > index ad60ea0..c669d4e 100755 > --- a/configure > +++ b/configure > @@ -413,6 +413,7 @@ SunOS) > make="${MAKE-gmake}" > install="${INSTALL-ginstall}" > ld="gld" > + smbd="${SMBD-/usr/sfw/sbin/smbd}" > needs_libsunmath="no" > solarisrev=`uname -r | cut -f2 -d.` > # have to select again, because `uname -m` returns i86pc > @@ -481,6 +482,7 @@ fi > : ${make=${MAKE-make}} > : ${install=${INSTALL-install}} > : ${python=${PYTHON-python}} > +: ${smbd=${SMBD-/usr/sbin/smbd}} > > if test "$mingw32" = "yes" ; then > EXESUF=".exe" > @@ -525,6 +527,8 @@ for opt do > ;; > --python=*) python="$optarg" > ;; > + --smbd=*) smbd="$optarg" > + ;; > --extra-cflags=*) > ;; > --extra-ldflags=*) > @@ -941,6 +945,7 @@ echo " --extra-ldflags=LDFLAGS append extra linker flags LDFLAGS" > echo " --make=MAKE use specified make [$make]" > echo " --install=INSTALL use specified install [$install]" > echo " --python=PYTHON use specified python [$python]" > +echo " --smbd=SMBD use specified smbd [$smbd]" > echo " --static enable static build [$static]" > echo " --mandir=PATH install man pages in PATH" > echo " --datadir=PATH install firmware in PATH" > @@ -2666,6 +2671,9 @@ echo "LDFLAGS $LDFLAGS" > echo "make $make" > echo "install $install" > echo "python $python" > +if test "$slirp" = "yes" ; then > + echo "smbd $smbd" > +fi > echo "host CPU $cpu" > echo "host big endian $bigendian" > echo "target list $target_list" > @@ -2825,6 +2833,7 @@ if test "$profiler" = "yes" ; then > fi > if test "$slirp" = "yes" ; then > echo "CONFIG_SLIRP=y" >> $config_host_mak > + echo "CONFIG_SMBD_COMMAND=\"$smbd\"" >> $config_host_mak > QEMU_INCLUDES="-I\$(SRC_PATH)/slirp $QEMU_INCLUDES" > fi > if test "$vde" = "yes" ; then > diff --git a/net.h b/net.h > index 5a7881c..9f633f8 100644 > --- a/net.h > +++ b/net.h > @@ -174,11 +174,6 @@ int do_netdev_del(Monitor *mon, const QDict *qdict, QObject **ret_data); > > #define DEFAULT_NETWORK_SCRIPT "/etc/qemu-ifup" > #define DEFAULT_NETWORK_DOWN_SCRIPT "/etc/qemu-ifdown" > -#ifdef __sun__ > -#define SMBD_COMMAND "/usr/sfw/sbin/smbd" > -#else > -#define SMBD_COMMAND "/usr/sbin/smbd" > -#endif > > void qdev_set_nic_properties(DeviceState *dev, NICInfo *nd); > > diff --git a/net/slirp.c b/net/slirp.c > index 3b39d21..c6cda5d 100644 > --- a/net/slirp.c > +++ b/net/slirp.c > @@ -529,7 +529,7 @@ static int slirp_smb(SlirpState* s, const char *exported_dir, > fclose(f); > > snprintf(smb_cmdline, sizeof(smb_cmdline), "%s -s %s", > - SMBD_COMMAND, smb_conf); > + CONFIG_SMBD_COMMAND, smb_conf); > > if (slirp_add_exec(s->slirp, 0, smb_cmdline, &vserver_addr, 139) < 0) { > slirp_smb_cleanup(s); > diff --git a/qemu-options.hx b/qemu-options.hx > index 35d95d1..e24a740 100644 > --- a/qemu-options.hx > +++ b/qemu-options.hx > @@ -1277,9 +1277,9 @@ or @file{C:\WINNT\SYSTEM32\DRIVERS\ETC\LMHOSTS} (Windows NT/2000). > > Then @file{@var{dir}} can be accessed in @file{\\smbserver\qemu}. > > -Note that a SAMBA server must be installed on the host OS in > -@file{/usr/sbin/smbd}. QEMU was tested successfully with smbd versions from > -Red Hat 9, Fedora Core 3 and OpenSUSE 11.x. > +Note that a SAMBA server must be installed on the host OS. > +QEMU was tested successfully with smbd versions from Red Hat 9, > +Fedora Core 3 and OpenSUSE 11.x. > > @item hostfwd=[tcp|udp]:[@var{hostaddr}]:@var{hostport}-[@var{guestaddr}]:@var{guestport} > Redirect incoming TCP or UDP connections to the host port @var{hostport} to > -- > 1.7.6 > > >
diff --git a/configure b/configure index ad60ea0..c669d4e 100755 --- a/configure +++ b/configure @@ -413,6 +413,7 @@ SunOS) make="${MAKE-gmake}" install="${INSTALL-ginstall}" ld="gld" + smbd="${SMBD-/usr/sfw/sbin/smbd}" needs_libsunmath="no" solarisrev=`uname -r | cut -f2 -d.` # have to select again, because `uname -m` returns i86pc @@ -481,6 +482,7 @@ fi : ${make=${MAKE-make}} : ${install=${INSTALL-install}} : ${python=${PYTHON-python}} +: ${smbd=${SMBD-/usr/sbin/smbd}} if test "$mingw32" = "yes" ; then EXESUF=".exe" @@ -525,6 +527,8 @@ for opt do ;; --python=*) python="$optarg" ;; + --smbd=*) smbd="$optarg" + ;; --extra-cflags=*) ;; --extra-ldflags=*) @@ -941,6 +945,7 @@ echo " --extra-ldflags=LDFLAGS append extra linker flags LDFLAGS" echo " --make=MAKE use specified make [$make]" echo " --install=INSTALL use specified install [$install]" echo " --python=PYTHON use specified python [$python]" +echo " --smbd=SMBD use specified smbd [$smbd]" echo " --static enable static build [$static]" echo " --mandir=PATH install man pages in PATH" echo " --datadir=PATH install firmware in PATH" @@ -2666,6 +2671,9 @@ echo "LDFLAGS $LDFLAGS" echo "make $make" echo "install $install" echo "python $python" +if test "$slirp" = "yes" ; then + echo "smbd $smbd" +fi echo "host CPU $cpu" echo "host big endian $bigendian" echo "target list $target_list" @@ -2825,6 +2833,7 @@ if test "$profiler" = "yes" ; then fi if test "$slirp" = "yes" ; then echo "CONFIG_SLIRP=y" >> $config_host_mak + echo "CONFIG_SMBD_COMMAND=\"$smbd\"" >> $config_host_mak QEMU_INCLUDES="-I\$(SRC_PATH)/slirp $QEMU_INCLUDES" fi if test "$vde" = "yes" ; then diff --git a/net.h b/net.h index 5a7881c..9f633f8 100644 --- a/net.h +++ b/net.h @@ -174,11 +174,6 @@ int do_netdev_del(Monitor *mon, const QDict *qdict, QObject **ret_data); #define DEFAULT_NETWORK_SCRIPT "/etc/qemu-ifup" #define DEFAULT_NETWORK_DOWN_SCRIPT "/etc/qemu-ifdown" -#ifdef __sun__ -#define SMBD_COMMAND "/usr/sfw/sbin/smbd" -#else -#define SMBD_COMMAND "/usr/sbin/smbd" -#endif void qdev_set_nic_properties(DeviceState *dev, NICInfo *nd); diff --git a/net/slirp.c b/net/slirp.c index 3b39d21..c6cda5d 100644 --- a/net/slirp.c +++ b/net/slirp.c @@ -529,7 +529,7 @@ static int slirp_smb(SlirpState* s, const char *exported_dir, fclose(f); snprintf(smb_cmdline, sizeof(smb_cmdline), "%s -s %s", - SMBD_COMMAND, smb_conf); + CONFIG_SMBD_COMMAND, smb_conf); if (slirp_add_exec(s->slirp, 0, smb_cmdline, &vserver_addr, 139) < 0) { slirp_smb_cleanup(s); diff --git a/qemu-options.hx b/qemu-options.hx index 35d95d1..e24a740 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -1277,9 +1277,9 @@ or @file{C:\WINNT\SYSTEM32\DRIVERS\ETC\LMHOSTS} (Windows NT/2000). Then @file{@var{dir}} can be accessed in @file{\\smbserver\qemu}. -Note that a SAMBA server must be installed on the host OS in -@file{/usr/sbin/smbd}. QEMU was tested successfully with smbd versions from -Red Hat 9, Fedora Core 3 and OpenSUSE 11.x. +Note that a SAMBA server must be installed on the host OS. +QEMU was tested successfully with smbd versions from Red Hat 9, +Fedora Core 3 and OpenSUSE 11.x. @item hostfwd=[tcp|udp]:[@var{hostaddr}]:@var{hostport}-[@var{guestaddr}]:@var{guestport} Redirect incoming TCP or UDP connections to the host port @var{hostport} to
Allow overriding the location of Samba's smbd. Pretty much every OS I look at has some means of changing this path (patching) so lets just make it easier for OS developers creating packages and/or end users to override the location. Signed-off-by: Brad Smith <brad@comstyle.com> --- configure | 9 +++++++++ net.h | 5 ----- net/slirp.c | 2 +- qemu-options.hx | 6 +++--- 4 files changed, 13 insertions(+), 9 deletions(-)