Re: [Samba] Understanding ldap auth credentials
On Thu, 2009-03-26 at 22:35 -0400, jeff sacksteder wrote: I'm try to create a single sign on configuration for a home fileserver, storing user accounts in the directory and using those credentials to authenticate Linux shell logins, server applications and PDC logins. Not single sign on (that is Kerberos), but unified (one) login. It appears that the uid and SID are the only mandatory attributes, but I also see attributes for storing the passwd or pw hash. Is the passwd to be stored in the LDAP record twice - once as a posix pw and once as a domain pw? No, three times. Your UNIX password crypt in userpassword and twice for cifs: once as an NT hash (MD5?) and one as a LANMAN hash. It works out fine - just change your passwords via Samba or use the standard change-password extended operation [LDAP] with the smbk5 module and they will all be updated simultaneously. Can't Samba just use the existing pw attribute? No. If I attempt to auth, check_ntlm_password returns NT_STATUS_WRONG_PASSWORD. Could that also result from not being able to find the appropriate pw attribute? Yep. -- OpenGroupware developer: awill...@whitemice.org http://whitemiceconsulting.blogspot.com/ OpenGroupare Cyrus IMAPd documenation @ http://docs.opengroupware.org/Members/whitemice/wmogag/file_view -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] PDC / BDC in a Samba Domain Controller.
Your PDC and BDC must have the same SID, Your BDCs ldap database should be a copy of Your PDCs. Also the BDC should be a slave to the PDCs ldap. So every change in Your PDcs database should change on your BDC. This is quite simple with slurpd. If the PDC now stops the BDC will take over. The users are able to logg in, but to have there shares accesseable you should hve the same shares on PDC and BDC. Write a script when you log on or off to rsync the files of the users. Greetings Daniel On Thu, 26 Mar 2009 11:15:34 -0300, Juan Pablo Michelino jpmichel...@jfsecco.com.ar wrote: Hello I makeing a Domain Controller with Samba (v3.0.33) and LDAP (v2.4). I will install a PDC in the headquarter and a BDC in the subsidiary of the company that I work. The PDC and the BDC will have his own LDAP data base. I just install the PDC without problems and my next step is to install the BDC. I configured the LDAP that work in multi master mode. I made some test and the LDAP works well. I need to know if the BDC can write in his local data base. In other side: Can the BDC acts as PDC when the conection betwen both servers is broken? I need that the users that works in the subsidiary can log in and make changes in his profiles (e.g. change his password and so on) including when the conection with the headquarter is lost. Below I copy the BDC's smb.conf Can anyone help me? Thanks. # admin users = manager @Domain Admins @administradores ntlm auth = yes netbios name = PDC_Rosario workgroup = SECCO lanman auth = no winbind trusted domains only = yes encrypt passwords = yes winbind use default domain = yes server string = BDC domain logons = yes # --- Network Related Options - hosts allow = 10.20.0.0/16 10.18.0.0/16 localhost # --- Logging Options - max log size = 500 log file = /var/log/samba/%m.log # - LDAP Options -- ldap passwd sync = yes ldap admin dn = cn=manager,dc=secco,dc=com,dc=ar ldap user suffix = ou=People ldap group suffix = ou=Groups ldap machine suffix = ou=Computers ldap suffix = dc=secco,dc=com,dc=ar # --- Standalone Server Options --- security = user passdb backend = ldapsam:ldap://127.0.0.1 # --- Domain Members Options --- # --- Domain Controller Options --- logon script = login.bat add machine script = /usr/sbin/smbldap-useradd -w %u delete user script = /usr/sbin/smbldap-userdel %u add group script = /usr/sbin/smbldap-groupadd -p %g add user script = /usr/sbin/smbldap-useradd -m %u # --- Browser Control Options - local master = yes os level = 65 domain master = no preferred master = yes #- Name Resolution wins support = yes name resolve order = wins lmhosts bcast # --- Printing Options # --- Filesystem Options -- #== Share Definitions = [homes] comment = Home Directories browseable = no writable = no root preexec = /etc/samba/mk_sambadir /home/%u %u %g write list = %S manager valid users = SECCO\%S SECCO\manager inherit permissions = yes force user = %S force group = @administradores directory mask = 0700 create mask = 0700 [netlogon] comment = Network Logon Service browseable = yes path = /home/netlogon guest ok = yes writable = no valid users = SECCO\manager %U write list = llattan [shares] comment = Carpeta del grupo Sistemas path = /home2/sistemas valid users = @shares @administradores browseable = yes writable = no write list = @shares_w @administradores inherit permissions = yes force user = %U force group = share # -- Juan Pablo Michelino -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
[Samba] Upgrade to 3.3.2
Hello list! I'm upgrading from 3.0.25b to 3.3.2. The package configures and makes with no errors, but on restarting smbd or nmbd I get an error while loading shared libraries: libtalloc.so.1: cannot open shared object file: no such file or directory. Both libtalloc.so and libtalloc.so.1 are in /usr/local/samba/lib, and appear to be the same files as in the 3.3.2 package. Samba appears to properly install in /usr/local/samba. Any help would be greatly appreciated. -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] Upgrade to 3.3.2
On Fri, Mar 27, 2009 at 06:52:38AM -0400, Dave Beach wrote: I'm upgrading from 3.0.25b to 3.3.2. The package configures and makes with no errors, but on restarting smbd or nmbd I get an error while loading shared libraries: libtalloc.so.1: cannot open shared object file: no such file or directory. Both libtalloc.so and libtalloc.so.1 are in /usr/local/samba/lib, and appear to be the same files as in the 3.3.2 package. Samba appears to properly install in /usr/local/samba. Please set the LD_LIBRARY_PATH variable so that it includes /usr/local/samba/lib. Depending on your platform, you might alternatively add /usr/local/samba/lib to /etc/ld.so.conf and re-run ldconfig. Volker pgpi9ncpvXwWk.pgp Description: PGP signature -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
RE: [Samba] Upgrade to 3.3.2
Works like a charm, thanks. -Original Message- From: Volker Lendecke [mailto:volker.lende...@sernet.de] Sent: March 27, 2009 7:05 AM To: Dave Beach Cc: samba@lists.samba.org Subject: Re: [Samba] Upgrade to 3.3.2 On Fri, Mar 27, 2009 at 06:52:38AM -0400, Dave Beach wrote: I'm upgrading from 3.0.25b to 3.3.2. The package configures and makes with no errors, but on restarting smbd or nmbd I get an error while loading shared libraries: libtalloc.so.1: cannot open shared object file: no such file or directory. Both libtalloc.so and libtalloc.so.1 are in /usr/local/samba/lib, and appear to be the same files as in the 3.3.2 package. Samba appears to properly install in /usr/local/samba. Please set the LD_LIBRARY_PATH variable so that it includes /usr/local/samba/lib. Depending on your platform, you might alternatively add /usr/local/samba/lib to /etc/ld.so.conf and re-run ldconfig. Volker -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
[Samba] [Release Planning 3.2] Samba 3.2.9 planned for March 31
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hey folks, The next Samba 3.2 maintenance release (3.2.9) is planned for Tuesday, March 31. The Wiki [1] has been updated accordingly. [1] http://wiki.samba.org/index.php/Release_Planning_for_Samba_3.2 Cheers, Karolin - -- Samba http://www.samba.org SerNet http://www.sernet.de sambaXP http://www.sambaxp.org -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.9 (GNU/Linux) iEYEARECAAYFAknMvE8ACgkQKGi9fisXk1EW/QCfT40qZL6MvdxFC/VklQOYzw7n CS0Ani7jNnG3zj2BFQks9TWjTKL0s/Gt =sNXf -END PGP SIGNATURE- -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
[Samba] [Release Planning 3.3] Samba 3.3.3 planned for April 1
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hey folks, Samba 3.3.3 is planned for Wednesday, April 1. The Wiki [1] has been updated accordingly. [1] http://wiki.samba.org/index.php/Release_Planning_for_Samba_3.3 Cheers, Karolin - -- Samba http://www.samba.org SerNet http://www.sernet.de sambaXP http://www.sambaxp.org -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.9 (GNU/Linux) iEYEARECAAYFAknMvUcACgkQKGi9fisXk1FpiwCdG8a+mjGcspweBWpzJNPNUfIt K/QAniEqfzM3DZ3/1MgKTwi0ugig/1ZK =Nej+ -END PGP SIGNATURE- -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] PDC / BDC in a Samba Domain Controller.
On Fri, Mar 27, 2009 at 5:24 AM, Daniel Müller muel...@tropenklinik.de wrote: Your PDC and BDC must have the same SID, Your BDCs ldap database should be a copy of Your PDCs. Also the BDC should be a slave to the PDCs ldap. So every change in Your PDcs database should change on your BDC. This is quite simple with slurpd. If the PDC now stops the BDC will take over. The users are able to logg in, but to have there shares accesseable you should hve the same shares on PDC and BDC. Write a script when you log on or off to rsync the files of the users. I thought slurpd was deprecated years ago when openldap-2.3 came out. http://www.openldap.org/doc/admin24/replication.html John -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
[Samba] failed to join domain error
Dear All, I have succesfully managed to have my kerberos configured n working without error when i say kinit Administrator and after entering password i get the # prompt so its works fine my krb5.conf -- [logging] default = FILE:/var/log/krb5libs.log kdc = FILE:/var/log/krb5kdc.log admin_server = FILE:/var/log/kadmind.log [libdefaults] default_realm = BALADIA.LOCAL dns_lookup_kdc = false dns_lookup_realm = false [realms] BALADIA.LOCAL = { default_domain = baladia.local kdc = xx.xx.xx.xx:88 admin_server = xx.xx.xx.xx:749 kdc = KMUN } [domain_realm] baladia.local = BALADIA.LOCAL klist shows icket cache: FILE:/tmp/krb5cc_0 Default principal: administra...@baladia.local Valid starting ExpiresService principal 03/26/09 11:33:04 03/26/09 21:33:18 krbtgt/baladia.lo...@baladia.local renew until 03/27/09 11:33:04 Kerberos 4 ticket cache: /tmp/tkt0 klist: You have no tickets cached now i configured /etc/samba/smb.conf but when i try to join my Win2003 ADS domain server net ads join -U Administrator Administrator's password: [2009/03/26 21:58:05, 0] utils/net_ads.c:ads_startup_int(286) ads_connect: No logon servers Failed to join domain: No logon servers after googling and tryin various options in /etc/samba/smb.conf file here is the latest smb.conf file - [global] #--authconfig--start-line-- # Generated by authconfig on 2009/03/26 12:50:28 # DO NOT EDIT THIS SECTION (delimited by --start-line--/--end-line--) # Any modification may be deleted or altered by authconfig in future workgroup = BALADIA.LOCAL ; password server = kmun.baladia.local password server = 172.16.2.227 realm = KMUN.BALADIA.LOCAL security = ads idmap uid = 16777216-33554431 idmap gid = 16777216-33554431 winbind separator = + template shell = /bin/bash winbind use default domain = true winbind offline logon = false encrypt passwords = yes log level = 3 #--authconfig--end-line-- encrypt passwords = yes dns proxy = no server string = Samba Server Version %v os level = 20 client use spnego = no server signing = auto -- where i could be goin wrong i would be thankful and really apprecite your advice for any setting in my smb.conf file Is there anything else to check. really once again apprecite your help and advice when i run testparam it gives no errors output of testparm is -- [r...@testproxy ~]# testparm Load smb config files from /etc/samba/smb.conf Processing section [homes] Processing section [printers] Loaded services file OK. 'winbind separator = +' might cause problems with group membership. Server role: ROLE_DOMAIN_MEMBER Press enter to see a dump of your service definitions [global] workgroup = BALADIA.LOCAL realm = KMUN.BALADIA.LOCAL server string = Samba Server Version %v security = ADS password server = 172.16.2.227 log level = 3 server signing = auto client use spnego = No preferred master = No dns proxy = No idmap uid = 16777216-33554431 idmap gid = 16777216-33554431 template shell = /bin/bash winbind separator = + winbind use default domain = Yes [homes] comment = Home Directories read only = No browseable = No [printers] comment = All Printers path = /var/spool/samba printable = Yes browseable = No thnks and Regards Simon -- Network ADMIN - KUWAIT MUNICIPALITY: -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] Samba/LDAP Backend: Error NT_STATUS_CONNECTION_REFUSED
did you run testparm -s and look for errors in smb.conf? you don't need these two lines in smb.conf anymore: passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* . since you are using ldap and have ldap passwd sync = yes also, your ldap admin dn is wrong. what is it in your slapd.conf file? it should be something like ldap admin dn = cn=Manager,dc=zmail,dc=ptest,dc=us did you do smbpasswd -w Todd E Thomas wrote: When I run this command I am not prompted for a password, I just get the below error. # smbclient -U root //zmail/homes Error connecting to 10.0.0.14 (Connection refused) Connection to zmail failed (Error NT_STATUS_CONNECTION_REFUSED) --- Now for the back story: CentOS v5.2 with Samba v3.0.28-1.el5_2.1 and Zimbra 5.0.11_GA on x86_64 hardware. I'm attempting to connect samba (PDC) with zimbra's included openldap. everything appeared to work correctly on an individual basis (samba, zimbra, openldap) and openldap appears to be working correctly via ldapsearch. Once I ran authconfig things went a little crazy for samba. I think it's not able to communicate with ldap and I'm not sure what tools and methods there are for a procedural verification of their intercommunication. Is there such a resource? As a result, there are a few errors. The one above and one other; smbd keeps dying on me. As I am a novice I'm not sure if these things are related or not. The conf is below. # service smb status smbd dead but pid file exists nmbd (pid 9072) is running... Thanks in advance, Todd E Thomas === The host is zmail = 10.0.0.14 --- [global] netbios name = zmail workgroup = OFFICE security = user server string = Palladium %v wins support = yes dns proxy = no name resolve order = wins hosts lmhosts bcast wins server = 10.0.0.14 log file = /var/log/samba/log.%m log level = 6 max log size = 1000 syslog only = no syslog = 0 panic action = /usr/share/samba/panic-action %d enable privileges = yes encrypt passwords = yes ## Use ldap for auth ldap passwd sync = yes passdb backend = ldapsam:ldaps://zmail.ptest.us/ # ldap port = 636 ldap admin dn = cn=config ldap suffix = dc=ptest,dc=us ldap group suffix = ou=groups ldap user suffix = ou=people ldap machine suffix = ou=machines obey pam restrictions = no passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* . domain master = yes domain logons = yes os level = 33 preferred master = yes local master = yes logon path = \\zmail.ptest.us\%U\profile logon home = \\zmail.ptest.us\%U add user script = /usr/sbin/adduser --quiet --disabled-password --gecos %u add machine script = /usr/sbin/adduser --shell /bin/false --disabled-password --quiet --gecos machine account --force-badname %u socket options = TCP_NODELAY [homes] comment = Home Directories browseable = yes read only = No valid users = %S [netlogon] comment = Network Logon Service path = /export/netlogon read only = yes write list = +ntadmin locking = no === -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] PDC / BDC in a Samba Domain Controller.
Thanks Daniel and John. I am not using slurp. I am using rsync to syncronize all data base. I need to know if the BDC can write his local LDAP data base. If it is OK, I think that the domain go to work well, regardless if the conection betwen PDC and BDC is broken or not. Can your help me? Tanks. Juan Pablo Michelino John Drescher escribió: On Fri, Mar 27, 2009 at 5:24 AM, Daniel Müller muel...@tropenklinik.de wrote: Your PDC and BDC must have the same SID, Your BDCs ldap database should be a copy of Your PDCs. Also the BDC should be a slave to the PDCs ldap. So every change in Your PDcs database should change on your BDC. This is quite simple with slurpd. If the PDC now stops the BDC will take over. The users are able to logg in, but to have there shares accesseable you should hve the same shares on PDC and BDC. Write a script when you log on or off to rsync the files of the users. I thought slurpd was deprecated years ago when openldap-2.3 came out. http://www.openldap.org/doc/admin24/replication.html John -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] PDC / BDC in a Samba Domain Controller.
I am not using slurp. I am using rsync to syncronize all data base. I need to know if the BDC can write his local LDAP data base. If it is OK, I think that the domain go to work well, regardless if the conection betwen PDC and BDC is broken or not. Can your help me? Tanks. I would use syncrepl instead. With openldap 2.4 both ldap servers can be masters in multimaster mode. http://www.openldap.org/doc/admin24/replication.html John -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
[Samba] Multiple daemon log files.
Hi there, Been around Linux a while, new to Samba, know nothing about Windows. Installed Samba on vanilla Debian Lenny, the package manager gave me Samba 3.2.5, and it didn't work. Searching revealed that there are problems with that release so I tried a source install. Never did like Debian-out-of-date-and-patched-to-hell stuff anyway. The source install default locations are everywhere different from Debian, and I think that the two installations may have interfered with each other. I've used the package manager to remove the Debian-supplied version, but I don't know if that's been entirely successful. Following the docs to test the installation (which still doesn't work but I'm not going to worry you with that for the moment, it's why I'm trawling the logs:) I find that when I start Samba, TWO log files are created for smbd and winbindd, one each in /usr/local/samba/var and in /var/log/samba. The pairs of files contain different information. For example one will contain the announcement of the daemon starting, then apparently the logging switches to the other file e.g.: /usr/local/samba/var/log.smbd -- [2009/03/27 15:06:32, 0] smbd/server.c:main(1256) smbd version 3.3.2 started. Copyright Andrew Tridgell and the Samba Team 1992-2009 [2009/03/27 15:06:32, 2] lib/tallocmsg.c:register_msg_pool_usage(106) Registered MSG_REQ_POOL_USAGE [2009/03/27 15:06:32, 2] lib/dmallocmsg.c:register_dmalloc_msgs(77) Registered MSG_REQ_DMALLOC_MARK and LOG_CHANGED -- /var/log/log.smbd -- [2009/03/27 15:06:32, 2] param/loadparm.c:do_section(7474) Processing section [REB] [2009/03/27 15:06:32, 2] param/loadparm.c:do_section(7474) Processing section [Design] [2009/03/27 15:06:32, 2] param/loadparm.c:do_section(7474) Processing section [Archive] [2009/03/27 15:06:32, 2] param/loadparm.c:do_section(7474) Processing section [homes] [2009/03/27 15:06:32, 2] param/loadparm.c:do_section(7474) Processing section [printers] [2009/03/27 15:06:32, 2] param/loadparm.c:do_section(7474) Processing section [print$] [2009/03/27 15:06:32, 2] lib/interface.c:add_interface(340) added interface eth0 ip=fe80::20c:6eff:fe2d:b1c6%eth0 bcast=fe80:::::%eth0 netmask=::::: [2009/03/27 15:06:32, 2] lib/interface.c:add_interface(340) added interface eth0 ip=192.168.0.250 bcast=192.168.0.255 netmask=255.255.255.0 [2009/03/27 15:06:32, 2] lib/interface.c:add_interface(340) added interface lo ip=::1 bcast=::1 netmask=::::::: [2009/03/27 15:06:32, 2] lib/interface.c:add_interface(340) added interface lo ip=127.0.0.1 bcast=127.255.255.255 netmask=255.0.0.0 [2009/03/27 15:06:32, 2] libsmb/namequery.c:name_query(778) Got a positive name query response from 192.168.0.10 ( 192.168.0.10 ) [2009/03/27 15:06:48, 2] smbd/server.c:open_sockets_smbd(593) waiting for a connection -- The testparm utility reports no errors in smb.conf. I have the line log file = /var/log/samba/log.%m in smb.conf which I took to mean logs for machines will be written in the /var/log/samba directory, but not logs for the daemons. To put my mind at rest, should I also expect the daemon logs (or parts of them??) to be written there too, or is this a bug, or might this be a symptom of my ill-advised tinkering? -- 73, Ged. -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
[Samba] Error loading module '/usr/lib/samba/pdb/tbdsam.so'
Brief history, originally setup as Ubuntu 7.10. Upgraded to 8.04.1LTS, Samba 3.0.28 and has latest updates installed as of this morning. Currently Samba is configured to use smbpasswd for passdb backend. As tdbsam has become the peferred backend, would like to migrate to tdbsam. When I attempt pdbedit -i smbpasswd -e tbdsam I get the following result: No builtin backend found, trying to load pluginError loading module '/usr/lib/samba/pdb/tbdsam.so': /usr/lib/samba/pdb/tbdsam.so: cannot open shared object file: No such file or directory No builtin nor plugin backend for tdbsam found Unable to initialize tbdsam. The directory /usr/lib/samba contains only vfs directory. So, indeed there is nothing to open there. I tried to locate tdbsam.so but Ubuntu returns no location, so I do not believe it appears to be loaded. How do I fix this issue so I can migrate? -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] Error loading module '/usr/lib/samba/pdb/tbdsam.so'
On Fri, Mar 27, 2009 at 10:44:29AM -0500, Bob Wooden wrote: When I attempt pdbedit -i smbpasswd -e tbdsam I get the following result: No builtin backend found, trying to load pluginError loading module '/usr/lib/samba/pdb/tbdsam.so': /usr/lib/samba/pdb/tbdsam.so: cannot open shared object file: No such file or directory No builtin nor plugin backend for tdbsam found Unable to initialize tbdsam. You're certain you don't mean tdbsam instead of tbdsam (note the swap of db vs bd)? Volker pgpn5RBg01e4G.pgp Description: PGP signature -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] Multiple daemon log files.
On Fri, Mar 27, 2009 at 03:32:18PM +, G.W. Haywood wrote: The testparm utility reports no errors in smb.conf. I have the line log file = /var/log/samba/log.%m in smb.conf which I took to mean logs for machines will be written in the /var/log/samba directory, but not logs for the daemons. To put my mind at rest, should I also expect the daemon logs (or parts of them??) to be written there too, or is this a bug, or might this be a symptom of my ill-advised tinkering? Ill advised thinking :-). All logs will we written in that directory. Jeremy. -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
RE: [Samba] failed to join domain error
-Original Message- From: samba-bounces+james_zuelow=ci.juneau.ak...@lists.samba.org [mailto:samba-bounces+james_zuelow=ci.juneau.ak...@lists.samba .org] On Behalf Of Benedict simon Sent: Friday, 27 March, 2009 05:06 To: samba@lists.samba.org Subject: [Samba] failed to join domain error Dear All, I have succesfully managed to have my kerberos configured n working without error when i say kinit Administrator and after entering password i get the # prompt so its works fine now i configured /etc/samba/smb.conf but when i try to join my Win2003 ADS domain server net ads join -U Administrator Administrator's password: [2009/03/26 21:58:05, 0] utils/net_ads.c:ads_startup_int(286) ads_connect: No logon servers Failed to join domain: No logon servers thnks and Regards Simon -- Network ADMIN - KUWAIT MUNICIPALITY: I just had a host do this recently, using Samba 3.2.5-4 Debian. DNS was working fine, kerberos was working fine, but for some reason net ads join didn't want to work. I resolved it by putting an entry for a domain controller into /etc/hosts. After that net ads join worked fine. James ZuelowCBJ MIS (907)586-0236 Network Specialist...Registered Linux User No. 186591 -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
RE: [Samba] failed to join domain error
-Original Message- From: samba-bounces+james_zuelow=ci.juneau.ak...@lists.samba.org [mailto:samba-bounces+james_zuelow=ci.juneau.ak...@lists.samba .org] On Behalf Of Benedict simon Sent: Friday, 27 March, 2009 05:06 To: samba@lists.samba.org Subject: [Samba] failed to join domain error Dear All, I have succesfully managed to have my kerberos configured n working without error when i say kinit Administrator and after entering password i get the # prompt so its works fine now i configured /etc/samba/smb.conf but when i try to join my Win2003 ADS domain server net ads join -U Administrator Administrator's password: [2009/03/26 21:58:05, 0] utils/net_ads.c:ads_startup_int(286) ads_connect: No logon servers Failed to join domain: No logon servers thnks and Regards Simon -- Network ADMIN - KUWAIT MUNICIPALITY: I just had a host do this recently, using Samba 3.2.5-4 Debian. DNS was working fine, kerberos was working fine, but for some reason net ads join didn't want to work. I resolved it by putting an entry for a domain controller into /etc/hosts. After that net ads join worked fine. James ZuelowCBJ MIS (907)586-0236 Network Specialist...Registered Linux User No. 186591 -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. Thanks and really apprecite your quick reply by the way i do have a entry in my hosts file 172.16.2.227BALADIA.LOCAL also the realm was different from my krb5.conf file i think since i was jus tryin options so now the realm i have corrected and my realm in smb.conf n krb5.conf is the same also when i run net ads info it gives me -- Failed to get server's current time! LDAP server: 172.16.2.227 LDAP server name: kmun.baladia.local Realm: BALADIA.LOCAL Bind Path: dc=BALADIA,dc=LOCAL LDAP port: 389 Server time: Thu, 01 Jan 1970 03:00:00 AST KDC server: 172.16.2.227 Server time offset: 0 again i mention my AD win2003 server domain is BALADIA.LOCAL computer name is kmun ip === 172.16.2.227 apprecite if you could help me with somne suggestions thanks once again regards simon -- Network ADMIN - KUWAIT MUNICIPALITY: -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
[Samba] Unable to add machine accounts
I have the exact same problem as this guy: http://lists.samba.org/archive/samba/2006-September/125699.html He describes it much better and in much more detail than I could, so I'll let him speak for me. Unfortunately, I don't have the same solution. nss_ldap is configured properly, and things like 'getent passwd' and 'id machine-acct$' show the machine accounts as expected: % getent passwd | grep stpierre stpierre:x:2273:4000:Christopher St Pierre:/home/faculty/stpierre:/bin/zsh stpierre-pc$:*:1944:1000:Computer:/dev/null:/bin/false % id stpierre-pc$ uid=1944(stpierre-pc$) gid=1000 groups=1000 Unfortunately, fix nss_ldap is about the only suggestion I could find on this problem on Google. Any other suggestions? Thanks! I'm running samba 3.0.33 on RHEL 5. /etc/ldap.conf (nss_ldap.conf on other distros): uri ldap://ldap.nebrwesleyan.edu base o=NebrWesleyan.edu,o=isp timelimit 30 bind_timelimit 30 bind_policy soft nss_initgroups_ignoreusers root,ldap ssl start_tls tls_checkpeer no The [global] section of smb.conf: [global] server string = Huxley workgroup = NWU_HUXLEY netbios name = Huxley log level = 1 log file = /var/log/samba/%U.%m.log max log size = 102400 add machine script = /usr/sbin/smbldap-useradd -t 10 -w '%m' bind interfaces only = true interfaces = 10.1.1.44 logon path = logon home = logon drive = socket options = TCP_NODELAY SO_RCVBUF=65536 SO_SNDBUF=65536 SO_KEEPALIVE max smbd processes = 0 encrypt passwords = yes domain logons = yes domain master = yes local master = yes preferred master = yes security = user os level = 33 wins server = 10.9.1.12 admin users = +ntadmin passdb backend = ldapsam:ldap://ldap.nebrwesleyan.edu ldap suffix = o=nebrwesleyan.edu,o=isp ldap machine suffix = ou=People ldap user suffix = ou=People ldap group suffix = ou=Groups ldap admin dn = cn=directory manager ldap ssl = off idmap uid = 1-2 idmap gid = 1-2 blocking locks = no unix extensions = no include = /etc/samba/%U.inc Chris St. Pierre Unix Systems Administrator Nebraska Wesleyan University -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Fwd: [Samba] PDC / BDC in a Samba Domain Controller.
-- Forwarded message -- Sorry John. I made a mistake. I am not using rsync. I am using syncrepl. It works very well in multimaster mode. Do you know if is possible that the BDC can write in the LDAP data base? Juan Pablo Michelino -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] Samba/LDAP Backend: Error NT_STATUS_CONNECTION_REFUSED
the answers follow the questions below: did you run testparm -s and look for errors in smb.conf? --- Yes, I ran this a 1000 times. The answer: run it 1,001 times- There was a problem with wins wins support = yes wins server = 10.0.0.14 I kept wins server as that was in a sample at samba.org: http://wiki.samba.org/index.php/1.0._Configuring_Samba#1.1._smb.conf_PDC testparm -s now executes without error. Loaded services file OK. Server role: ROLE_DOMAIN_PDC === you don't need these two lines in smb.conf anymore: passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* . since you are using ldap and have ldap passwd sync = yes --- This I found in the walk-through for combining samba/zimbra. I'm a bit novice so I ran with it: http://wiki.zimbra.com/index.php?title=UNIX_and_Windows_Accounts_in_Zimbra_LDAP_and_Zimbra_Admin_UI#Configuring_Samba I'll try to create a few new users without these lines. === also, your ldap admin dn is wrong. what is it in your slapd.conf file? it should be something like ldap admin dn = cn=Manager,dc=zmail,dc=ptest,dc=us --- Actually this is correct for the zimbra implementation of openldap. I don't agree with getting so far away from a 'normal' OpenLDAP config but they must have run into a snag along the way that necessitated this change. === did you do smbpasswd -w --- Yes. It worked as expected. === The error still persists. # service smb status smbd dead but pid file exists nmbd (pid 31030) is running... It only stays on for a few minutes after you start it, then dies. There is nothing dropped in any log. This makes me think that whatever it is - is fatal; for the life of me I can't imagine what would cause that. T --- awill...@mdah.state.ms.us wrote: From: Adam Williams awill...@mdah.state.ms.us To: todd_...@ssiresults.com CC: samba@lists.samba.org Subject: Re: [Samba] Samba/LDAP Backend: Error NT_STATUS_CONNECTION_REFUSED Date: Fri, 27 Mar 2009 08:43:24 -0500 did you run testparm -s and look for errors in smb.conf? you don't need these two lines in smb.conf anymore: passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* . since you are using ldap and have ldap passwd sync = yes also, your ldap admin dn is wrong. what is it in your slapd.conf file? it should be something like ldap admin dn = cn=Manager,dc=zmail,dc=ptest,dc=us did you do smbpasswd -w Todd E Thomas wrote: When I run this command I am not prompted for a password, I just get the below error. # smbclient -U root //zmail/homes Error connecting to 10.0.0.14 (Connection refused) Connection to zmail failed (Error NT_STATUS_CONNECTION_REFUSED) --- Now for the back story: CentOS v5.2 with Samba v3.0.28-1.el5_2.1 and Zimbra 5.0.11_GA on x86_64 hardware. I'm attempting to connect samba (PDC) with zimbra's included openldap. everything appeared to work correctly on an individual basis (samba, zimbra, openldap) and openldap appears to be working correctly via ldapsearch. Once I ran authconfig things went a little crazy for samba. I think it's not able to communicate with ldap and I'm not sure what tools and methods there are for a procedural verification of their intercommunication. Is there such a resource? As a result, there are a few errors. The one above and one other; smbd keeps dying on me. As I am a novice I'm not sure if these things are related or not. The conf is below. # service smb status smbd dead but pid file exists nmbd (pid 9072) is running... Thanks in advance, Todd E Thomas === The host is zmail = 10.0.0.14 --- [global] netbios name = zmail workgroup = OFFICE security = user server string = Palladium %v wins support = yes dns proxy = no name resolve order = wins hosts lmhosts bcast wins server = 10.0.0.14 log file = /var/log/samba/log.%m log level = 6 max log size = 1000 syslog only = no syslog = 0 panic action = /usr/share/samba/panic-action %d enable privileges = yes encrypt passwords = yes ## Use ldap for auth ldap passwd sync = yes passdb backend = ldapsam:ldaps://zmail.ptest.us/ # ldap port = 636 ldap admin dn = cn=config ldap suffix = dc=ptest,dc=us ldap group suffix = ou=groups ldap user suffix = ou=people ldap machine suffix = ou=machines obey pam restrictions = no passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* . domain master = yes domain logons = yes os level = 33 preferred master = yes local master = yes logon path = \\zmail.ptest.us\%U\profile logon home = \\zmail.ptest.us\%U add user script = /usr/sbin/adduser --quiet --disabled-password --gecos %u add machine script = /usr/sbin/adduser
[Samba] Re: open_directory: unable to create *. Error was NT_STATUS_OBJECT_NAME_COLLISION
*bump* Nobody has any ideas? On Tue, Jan 20, 2009 at 4:49 PM, fbc flexbumpch...@gmail.com wrote: I'm terribly sorry I forgot to mention the most vital stuff, I'm on the latest rpm build (for FC8): Fedora 8: kernel 2.6.23.1-42.fc8 samba-swat-3.0.33-0.fc8 samba-client-3.0.33-0.fc8 samba-common-3.0.33-0.fc8 samba-3.0.33-0.fc8 On Tue, Jan 20, 2009 at 3:44 PM, fbc flexbumpch...@gmail.com wrote: Hi, I'm having problems moving/renaming files as a member of. I tried to move test.txt from \\files\public\ to \\files\public\OfficeWork. Here's the error I get in windows: *Cannot move test: access is denied. Make sure the disk is not full or write-protected and that the file is not currently in use.* Here's the error log: *[2009/01/20 15:10:34, 2] smbd/open.c:open_directory(2092) open_directory: unable to create OfficeWork. Error was NT_STATUS_OBJECT_NAME_COLLISION* List of permissions in my \\files\public\ directory (ls -al): drwxrwx--- 9 officeuser1 local_office 4096 2009-01-20 15:14 OfficeWork -rwxrwx--- 1 officeuser1 local_office0 2009-01-20 15:28 test.txt The relavent part of my smb.conf: *[global] workgroup = OFFICE netbios aliases = FILES server string = Samba Server v%v security = DOMAIN passdb backend = tdbsam passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* . passwd chat debug = Yes username map = /etc/samba/smbusers unix password sync = Yes log level = 2 syslog = 0 log file = /var/log/samba/log.%m max log size = 50 printcap name = CUPS add user script = /usr/sbin/useradd -m '%u' -g users -G users delete user script = /usr/sbin/userdel -r %u add group script = /usr/sbin/groupadd %g delete group script = /usr/sbin/groupdel %g add user to group script = /usr/sbin/usernod -G %g %u add machine script = /usr/sbin/useradd -s /bin/false/ -d /var/lib/nobody %u logon script = %U.bat logon path = \\%L\profiles\%U\%a logon drive = H: domain logons = Yes os level = 255 preferred master = Yes domain master = Yes wins support = Yes ldap ssl = no idmap uid = 15000-2 idmap gid = 15000-2 template shell = /bin/bash profile acls = Yes cups options = raw socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=8192 SO_RCVBUF=8192 time server = yes hide dot files = yes invalid users = bin deamon sys man postfix mail ftp admin users = george.alexander smb ports = 445 vfs object = audit domain admin group = @smbadmin domain admin users = root [public] comment = files path = /home/samba/envision_files valid users = @local_office write list = @local_office writable = Yes create mask = 0770 directory mask = 0770 public = No* Here's the user's line in /etc/passwd: *officeuser1:x:503:502::/home/officeuser1:/bin/bash* Here's the local_office group's line from /etc/group: *local_office:x:502:* I've also tried specifying the comma separated usernames after 502:, with no better results. Both files are 770, owned by my group (local_office), and my group is in the write list for the share, so what the heck is going on? I've also tried increasing the log level, but that seems to give me even fewer details about what's going on. Anybody have any ideas? Where should I start!? Thanks! -guth -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
[Samba] Automatic Permanent Disconnect of WinXP Clients
Hello, I'd like to enable my Samba server, either by the correct choice of standard configuration parameters or by custom script, to permanently log off and disconnect WinXP clients that have been inactive for a specified period of time. From my travels around the Web, I've seen this basic question asked by others, but no solutions have materialized. The deadtime and keepalive parameters seem intended to enhance Samba server performance, not permanently log off users. The auto-reconnect capabilities of WinXP clients, among other factors, also appear to contribute to keeping Samba connections open. Anyone know of a sure-fire solution? Thanks. Jon -- == Jon Ruth, Ph.D. Manager, FlexMatters Accelerator LCI, Kent State University 1425 University Esplanade P.O. Box 5190 Kent, OH 44242-0001 U.S.A. == -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] PDC / BDC in a Samba Domain Controller.
but to have there shares accesseable you should hve the same shares on PDC and BDC. Write a script when you log on or off to rsync the files of the users. How do you reliably capture logoff events? I thought slurpd was deprecated years ago when openldap-2.3 came out. It is (was). Current setups use syncrepl, and recent versions support multimaster and mirror-mode. http://www.openldap.org/doc/admin24/replication.html -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] Automatic Permanent Disconnect of WinXP Clients
I'd like to enable my Samba server, either by the correct choice of standard configuration parameters or by custom script, to permanently log off and disconnect WinXP clients that have been inactive for a specified period of time. From my travels around the Web, I've seen this basic question asked by others, but no solutions have materialized. This is a domain policy issue and has nothing to do (specifically) with Samba. Configure your ntconfig.pol file appropriately via POLEDIT. The deadtime and keepalive parameters seem intended to enhance Samba server performance, not permanently log off users. Correct. Disconnect != Logoff. -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] Automatic Permanent Disconnect of WinXP Clients
Adam Tauno Williams wrote: I'd like to enable my Samba server, either by the correct choice of standard configuration parameters or by custom script, to permanently log off and disconnect WinXP clients that have been inactive for a specified period of time. From my travels around the Web, I've seen this basic question asked by others, but no solutions have materialized. This is a domain policy issue and has nothing to do (specifically) with Samba. Configure your ntconfig.pol file appropriately via POLEDIT. The deadtime and keepalive parameters seem intended to enhance Samba server performance, not permanently log off users. Correct. Disconnect != Logoff. One of the problems in dealing with forced disconnection of idle clients is that often the client has actually dropped the connection without telling the server. As Adam has said, this is a client behavioral problem, and not something the server can do much about. Adam's suggestion is one answer. The other way is to create a default network user profile that already has auto-disconnection policies set. Both of these are outside of the scope of samba-specific issues. Suggest you refer to the Microsoft Knowledge Base for Windows NT4 for information regarding profiles and profile policies. Cheers, John T. -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
[Samba] need good tdbsam reference
Hi All, Can someone point me to a good reference on how to configure tdbsam ? Many thanks, -T -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] Understanding ldap auth credentials
out fine - just change your passwords via Samba or use the standard change-password extended operation [LDAP] with the smbk5 module and they will all be updated simultaneously. Could you elaborate on the smbk5 module and how it relates to ldappasswd? -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
[Samba] What are these failed to create errors?
Hi All, What does these error message mean: Mar 27 22:38:44 rn1 nss_wins[7195]: create_builtin_administrators: Failed to create Administrators Mar 27 22:38:44 rn1 nss_wins[7195]: create_builtin_users: Failed to create Users Many thanks, -T -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] need good tdbsam reference
John H Terpstra - Samba Team wrote: MargoAndTodd wrote: Hi All, Can someone point me to a good reference on how to configure tdbsam ? Many thanks, -T In your smb.conf [global] passdb backend = tdbsam Done! It's in my example in Chapter 3 of Samba3-ByExample. The default is: passdb backend = smbpasswd So how do you find the default settings? a) smb.conf has jsut the following: [global] comment = Something b) Execute: testparm -sv | less _OR_ Check the man page for smb.conf: man smb.conf Then type: /passdb backend enter I keep feeling like I am missing something. Like 1) how do I populate passdb.tdb with my old smbpasswd and 2) where is passdb.tdb located, so I can back it up? Many thanks, -T -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] need good tdbsam reference
MargoAndTodd wrote: I keep feeling like I am missing something. Like This too: I think I failed to set up the database that winbindd and wins wants to read. /var/log/messages: Mar 27 22:12:03 rn1 winbindd[6580]: [2009/03/27 22:12:03, 0] nsswitch/idmap.c:idmap_alloc_init(820) Mar 27 22:12:03 rn1 winbindd[6580]: ERROR: Initialization failed for alloc backend, deferred! and Mar 27 22:12:03 rn1 nss_wins[6589]: [2009/03/27 22:12:03, 0] auth/auth_util.c:create_builtin_administrators(792) Mar 27 22:12:03 rn1 nss_wins[6589]: create_builtin_administrators: Failed to create Administrators -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] need good tdbsam reference
MargoAndTodd wrote: I keep feeling like I am missing something. Like This too: I think I failed to set up the database that winbindd and wins wants to read. /var/log/messages: Mar 27 22:12:03 rn1 winbindd[6580]: [2009/03/27 22:12:03, 0] nsswitch/idmap.c:idmap_alloc_init(820) Mar 27 22:12:03 rn1 winbindd[6580]: ERROR: Initialization failed for alloc backend, deferred! and Mar 27 22:12:03 rn1 nss_wins[6589]: [2009/03/27 22:12:03, 0] auth/auth_util.c:create_builtin_administrators(792) Mar 27 22:12:03 rn1 nss_wins[6589]: create_builtin_administrators: Failed to create Administrators -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] need good tdbsam reference
MargoAndTodd wrote: 1) how do I populate passdb.tdb with my old smbpasswd and 2) where is passdb.tdb located, so I can back it up? To answer question #2: /etc/samba/passdb.tdb And it is full of B's. See no sign of a user name. It appeared after I had my first successful user log in as a domain member (the user did not exist on the Virtual XP machine). Still do not know how to populate the darned thing (question 1)! -T -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Re: [Samba] need good tdbsam reference
John H Terpstra - Samba Team wrote: MargoAndTodd wrote: Hi All, Can someone point me to a good reference on how to configure tdbsam ? Many thanks, -T In your smb.conf [global] passdb backend = tdbsam Done! It's in my example in Chapter 3 of Samba3-ByExample. The default is: passdb backend = smbpasswd So how do you find the default settings? a) smb.conf has jsut the following: [global] comment = Something b) Execute: testparm -sv | less _OR_ Check the man page for smb.conf: man smb.conf Then type: /passdb backend enter I keep feeling like I am missing something. Like 1) how do I populate passdb.tdb with my old smbpasswd and 2) where is passdb.tdb located, so I can back it up? Many thanks, -T -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/options/samba
Nothing can seduce women faster than aa...
This is yoour penis: 8--o This is yoour penis on drugs: 8=O Any questions? http://cid-ac047f430d4726de.spaces.live.com/blog/cns!AC047F430D4726DE!104.entry Gutenberg, which has caught fire and spread to till death an obligation that nothing can dissolve you lawyers i matter of fact, i couldn't believe sure i could learn ifif you wouldn't mind showing any sort but the authorization once granted, one. PLEASE READ THIS IMPORTANT ETIQUETTE MESSAGE BEFORE POSTING: http://www.catb.org/~esr/faqs/smart-questions.html
[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha7-760-g9e70a96
The branch, master has been updated via 9e70a960b78b8c2ca7c308a4ff9af9011804585c (commit) from a9bc6a3d457fc2e568317b9867f8b3dc2a8f0d4f (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 9e70a960b78b8c2ca7c308a4ff9af9011804585c Author: Volker Lendecke v...@samba.org Date: Fri Mar 20 16:09:17 2009 +0100 Fix the build of nfsv4_acls.c .. after adding smb_iconv_convenience to ndr_size_security_descriptor() --- Summary of changes: source3/modules/nfs4_acls.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/modules/nfs4_acls.c b/source3/modules/nfs4_acls.c index 7756f8f..462e593 100644 --- a/source3/modules/nfs4_acls.c +++ b/source3/modules/nfs4_acls.c @@ -315,7 +315,7 @@ static NTSTATUS smb_get_nt_acl_nfs4_common(const SMB_STRUCT_STAT *sbuf, } DEBUG(10, (smb_get_nt_acl_nfs4_common successfully exited with sd_size %d\n, - ndr_size_security_descriptor(*ppdesc, 0))); + ndr_size_security_descriptor(*ppdesc, NULL, 0))); return NT_STATUS_OK; } -- Samba Shared Repository
[SCM] Samba Shared Repository - branch v3-4-test updated - release-4-0-0alpha7-590-gd3289c3
The branch, v3-4-test has been updated via d3289c3e7df5951c1634642f026fc7873579b235 (commit) from 5e77abe108bab07c04f5c7186b63a4c0fef59721 (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-4-test - Log - commit d3289c3e7df5951c1634642f026fc7873579b235 Author: Volker Lendecke v...@samba.org Date: Fri Mar 20 16:09:17 2009 +0100 Fix the build of nfsv4_acls.c .. after adding smb_iconv_convenience to ndr_size_security_descriptor() (cherry picked from commit 9e70a960b78b8c2ca7c308a4ff9af9011804585c) --- Summary of changes: source3/modules/nfs4_acls.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/modules/nfs4_acls.c b/source3/modules/nfs4_acls.c index 7756f8f..462e593 100644 --- a/source3/modules/nfs4_acls.c +++ b/source3/modules/nfs4_acls.c @@ -315,7 +315,7 @@ static NTSTATUS smb_get_nt_acl_nfs4_common(const SMB_STRUCT_STAT *sbuf, } DEBUG(10, (smb_get_nt_acl_nfs4_common successfully exited with sd_size %d\n, - ndr_size_security_descriptor(*ppdesc, 0))); + ndr_size_security_descriptor(*ppdesc, NULL, 0))); return NT_STATUS_OK; } -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha7-761-gcacfae1
The branch, master has been updated via cacfae159f7c1fa1e45fb1912ad813000ec281d6 (commit) from 9e70a960b78b8c2ca7c308a4ff9af9011804585c (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit cacfae159f7c1fa1e45fb1912ad813000ec281d6 Author: Stefan Metzmacher me...@samba.org Date: Fri Mar 27 11:34:13 2009 +0100 tsocket: try to fix the build on solaris systems It seems that 'sun' is somewhere defined and we can use it as name for variables or struct/union members. metze --- Summary of changes: lib/tsocket/tsocket_bsd.c | 36 ++-- 1 files changed, 18 insertions(+), 18 deletions(-) Changeset truncated at 500 lines: diff --git a/lib/tsocket/tsocket_bsd.c b/lib/tsocket/tsocket_bsd.c index 2811882..f673aa6 100644 --- a/lib/tsocket/tsocket_bsd.c +++ b/lib/tsocket/tsocket_bsd.c @@ -44,11 +44,11 @@ struct tsocket_address_bsd { bool broadcast; union { struct sockaddr sa; - struct sockaddr_in sin; + struct sockaddr_in in; #ifdef HAVE_IPV6 - struct sockaddr_in6 sin6; + struct sockaddr_in6 in6; #endif - struct sockaddr_un sun; + struct sockaddr_un un; struct sockaddr_storage ss; } u; }; @@ -204,14 +204,14 @@ char *tsocket_address_inet_addr_string(const struct tsocket_address *addr, switch (bsda-u.sa.sa_family) { case AF_INET: - str = inet_ntop(bsda-u.sin.sin_family, - bsda-u.sin.sin_addr, + str = inet_ntop(bsda-u.in.sin_family, + bsda-u.in.sin_addr, addr_str, sizeof(addr_str)); break; #ifdef HAVE_IPV6 case AF_INET6: - str = inet_ntop(bsda-u.sin6.sin6_family, - bsda-u.sin6.sin6_addr, + str = inet_ntop(bsda-u.in6.sin6_family, + bsda-u.in6.sin6_addr, addr_str, sizeof(addr_str)); break; #endif @@ -240,11 +240,11 @@ uint16_t tsocket_address_inet_port(const struct tsocket_address *addr) switch (bsda-u.sa.sa_family) { case AF_INET: - port = ntohs(bsda-u.sin.sin_port); + port = ntohs(bsda-u.in.sin_port); break; #ifdef HAVE_IPV6 case AF_INET6: - port = ntohs(bsda-u.sin6.sin6_port); + port = ntohs(bsda-u.in6.sin6_port); break; #endif default: @@ -268,11 +268,11 @@ int tsocket_address_inet_set_port(struct tsocket_address *addr, switch (bsda-u.sa.sa_family) { case AF_INET: - bsda-u.sin.sin_port = htons(port); + bsda-u.in.sin_port = htons(port); break; #ifdef HAVE_IPV6 case AF_INET6: - bsda-u.sin6.sin6_port = htons(port); + bsda-u.in6.sin6_port = htons(port); break; #endif default: @@ -336,7 +336,7 @@ char *tsocket_address_unix_path(const struct tsocket_address *addr, switch (bsda-u.sa.sa_family) { case AF_UNIX: - str = bsda-u.sun.sun_path; + str = bsda-u.un.sun_path; break; default: errno = EINVAL; @@ -359,7 +359,7 @@ static char *tsocket_address_bsd_string(const struct tsocket_address *addr, switch (bsda-u.sa.sa_family) { case AF_UNIX: return talloc_asprintf(mem_ctx, unix:%s, - bsda-u.sun.sun_path); + bsda-u.un.sun_path); case AF_INET: prefix = ipv4; break; @@ -469,27 +469,27 @@ static int tsocket_address_bsd_create_socket(const struct tsocket_address *addr, errno = EINVAL; return -1; } - if (bsda-u.sun.sun_path[0] != 0) { + if (bsda-u.un.sun_path[0] != 0) { do_bind = true; } break; case AF_INET: - if (bsda-u.sin.sin_port != 0) { + if (bsda-u.in.sin_port != 0) { do_reuseaddr = true; do_bind = true; } - if (bsda-u.sin.sin_addr.s_addr == INADDR_ANY) { + if (bsda-u.in.sin_addr.s_addr == INADDR_ANY) { do_bind = true; } break; #ifdef HAVE_IPV6 case AF_INET6: - if (bsda-u.sin6.sin6_port != 0) { + if (bsda-u.in6.sin6_port != 0) { do_reuseaddr = true; do_bind = true;
[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha7-763-gee8bc96
The branch, master has been updated via ee8bc9659c172a06fc40836c7dea1fb1d9aff244 (commit) via 424370274af3a1a837a0ce3078879a3dddee1e33 (commit) from cacfae159f7c1fa1e45fb1912ad813000ec281d6 (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit ee8bc9659c172a06fc40836c7dea1fb1d9aff244 Author: Stefan Metzmacher me...@samba.org Date: Fri Mar 27 12:20:09 2009 +0100 s4:build: make it possible to pass down CTAGS_OPTIONS or ETAGS_OPTIONS metze commit 424370274af3a1a837a0ce3078879a3dddee1e33 Author: Stefan Metzmacher me...@samba.org Date: Fri Mar 27 12:19:10 2009 +0100 s3:build: make it possible to pass down CTAGS_OPTIONS or ETAGS_OPTIONS metze --- Summary of changes: source3/Makefile.in |4 ++-- source4/build/make/rules.mk |5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/Makefile.in b/source3/Makefile.in index fd75312..18ee7fe 100644 --- a/source3/Makefile.in +++ b/source3/Makefile.in @@ -2906,10 +2906,10 @@ include/build_env.h: script/build_env.sh proto:: etags:: - find $(srcdir)/.. -name *.[ch] | xargs -n 100 etags --append + find $(srcdir)/.. -name *.[ch] | xargs -n 100 etags --append $(ETAGS_OPTIONS) ctags:: - ctags `find $(srcdir)/.. -name *.[ch] | grep -v include/proto\.h` + ctags $(CTAGS_OPTIONS) `find $(srcdir)/.. -name *.[ch] | grep -v include/proto\.h` realclean:: clean -rm -f config.log bin/.dummy script/findsmb script/gen-8bit-gap.sh diff --git a/source4/build/make/rules.mk b/source4/build/make/rules.mk index 55ecf89..e9f4786 100644 --- a/source4/build/make/rules.mk +++ b/source4/build/make/rules.mk @@ -185,7 +185,8 @@ showflags:: base_srcdirs = $(srcdir) ../librpc/ ../lib/ ../libcli etags: - etags `find $(base_srcdirs) -name *.[ch]` + etags $(ETAGS_OPTIONS) `find $(base_srcdirs) -name *.[ch]` ctags: - ctags `find $(base_srcdirs) -name *.[ch]` + ctags $(CTAGS_OPTIONS) `find $(base_srcdirs) -name *.[ch]` + -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha7-765-g742496d
The branch, master has been updated via 742496d2522ed4a53ce087adc4813331dbc75320 (commit) via 5c9e90eb7e7346c2af3bdc15228f97055ed5d1d6 (commit) from ee8bc9659c172a06fc40836c7dea1fb1d9aff244 (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 742496d2522ed4a53ce087adc4813331dbc75320 Author: Stefan Metzmacher me...@samba.org Date: Fri Mar 27 13:25:26 2009 +0100 s4:torture/smb2: fix compiler warnings and bugs metze commit 5c9e90eb7e7346c2af3bdc15228f97055ed5d1d6 Author: Stefan Metzmacher me...@samba.org Date: Fri Mar 27 13:21:25 2009 +0100 s4:torture/smb2: fix the build We move prototypes of _PUBLIC_ functions into /dev/null, as we want public function to have handwritten prototypes. see proto_header_template in build/make/templates.mk... metze --- Summary of changes: source4/torture/smb2/durable_open.c |4 +++- source4/torture/smb2/smb2.c | 10 +- 2 files changed, 8 insertions(+), 6 deletions(-) Changeset truncated at 500 lines: diff --git a/source4/torture/smb2/durable_open.c b/source4/torture/smb2/durable_open.c index f34dfc4..9cc25e3 100644 --- a/source4/torture/smb2/durable_open.c +++ b/source4/torture/smb2/durable_open.c @@ -190,7 +190,7 @@ bool test_durable_open_oplock(struct torture_context *tctx, struct smb2_tree *tree2) { TALLOC_CTX *mem_ctx = talloc_new(tctx); - struct smb2_create io1, io2, io3; + struct smb2_create io1, io2; struct smb2_handle h1; NTSTATUS status; const char *fname = durable_open_oplock.dat; @@ -297,4 +297,6 @@ struct torture_suite *torture_smb2_durable_open_init(void) torture_suite_add_2smb2_test(suite, OPLOCK, test_durable_open_oplock); suite-description = talloc_strdup(suite, SMB2-DURABLE-OPEN tests); + + return suite; } diff --git a/source4/torture/smb2/smb2.c b/source4/torture/smb2/smb2.c index 3b2e752..3c9522e 100644 --- a/source4/torture/smb2/smb2.c +++ b/source4/torture/smb2/smb2.c @@ -100,11 +100,11 @@ static bool wrap_simple_2smb2_test(struct torture_context *torture_ctx, } -_PUBLIC_ struct torture_test *torture_suite_add_2smb2_test(struct torture_suite *suite, - const char *name, - bool (*run)(struct torture_context *, - struct smb2_tree *, - struct smb2_tree *)) +struct torture_test *torture_suite_add_2smb2_test(struct torture_suite *suite, + const char *name, + bool (*run)(struct torture_context *, + struct smb2_tree *, + struct smb2_tree *)) { struct torture_test *test; struct torture_tcase *tcase; -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha7-766-g66b97d3
The branch, master has been updated via 66b97d36b9a086f2ef76f2d42a07bfdbdaa0f00d (commit) from 742496d2522ed4a53ce087adc4813331dbc75320 (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 66b97d36b9a086f2ef76f2d42a07bfdbdaa0f00d Author: Björn Jacke b...@sernet.de Date: Fri Mar 27 10:24:18 2009 +0100 s3: ifdef sendfile code that's only used in other ifdef'ed sendfile code This fixes a defined but not used compile warning. --- Summary of changes: source3/smbd/reply.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c index 16eb4a7..3f9d5c5 100644 --- a/source3/smbd/reply.c +++ b/source3/smbd/reply.c @@ -2679,6 +2679,7 @@ static ssize_t fake_sendfile(files_struct *fsp, SMB_OFF_T startpos, return (ssize_t)nread; } +#if defined(WITH_SENDFILE) / Deal with the case of sendfile reading less bytes from the file than requested. Fill with zeros (all we can do). @@ -2735,6 +2736,7 @@ static void sendfile_short_send(files_struct *fsp, SAFE_FREE(buf); } } +#endif /* defined WITH_SENDFILE */ / Return a readbraw error (4 bytes of zero). -- Samba Shared Repository
[SCM] Samba Shared Repository - branch v3-2-test updated - release-3-2-0pre2-3526-g7fa853e
The branch, v3-2-test has been updated via 7fa853e490be446a6da2086e1749b59a8f741e09 (commit) from a1d9b31a0c8a38dbfa94f578830d5d35695aff3b (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-2-test - Log - commit 7fa853e490be446a6da2086e1749b59a8f741e09 Author: Karolin Seeger ksee...@samba.org Date: Fri Mar 27 14:04:38 2009 +0100 WHATSNEW: Update changes since 3.2.8. Karolin --- Summary of changes: WHATSNEW.txt | 243 -- 1 files changed, 116 insertions(+), 127 deletions(-) Changeset truncated at 500 lines: diff --git a/WHATSNEW.txt b/WHATSNEW.txt index 47fd5b0..7a9b393 100644 --- a/WHATSNEW.txt +++ b/WHATSNEW.txt @@ -1,17 +1,18 @@ = - Release Notes for Samba 3.2.8 - March 03, 2009 + Release Notes for Samba 3.2.9 + March 31, 2009 = -This is a bug fix release of the Samba 3.2 series. +This is a maintenance release of the Samba 3.2 series. -Major enhancements included in Samba 3.2.8 are: +Major enhancements included in Samba 3.2.9 are: - o Correctly detect if the current DC is the closest one. - o Add saf_join_store() function to memorize the DC used at join time. -This avoids problems caused by replication delays shortly after domain -joins. + o Migrating from 3.0.x to 3.3.x can fail to update passdb.tdb +correctly (bug #6195). + o Fix guest authentication in setups with security = share and +guest ok = yes when Winbind is running. + o Fix corruptions of source path in tar mode of smbclient (bug #6161). The original security announcement for this and past advisories can @@ -22,166 +23,154 @@ be found http://www.samba.org/samba/security/ Changes ### -Changes since 3.2.7 +Changes since 3.2.8 --- o Michael Adam ob...@samba.org -* BUG 6066: netinet/ip.h present but cannot be compiled under Solaris. -* Fix join by creating keytab after changing the config in libnet. -* Streamline logic of libnet_join_post_processing() in libnet_join. -* Fix build of [u]mount.cifs in the RHEL packaging. -* Fix distclean target and add realdistclean target in the docs build. -* Clean generated .png images and build/catalog.xml in make clean. -* Fix detection of netinet/ip.h on Solaris 8. +* Add script fill-templates. +* Make update-pkginfo callable from any directory. o Jeremy Allison j...@samba.org -* BUG 4308: Excel save operation corrupts file ACLs. -* BUG 5979: Fix level 2 oplocks. -* BUG 5980: Fix race condition when granting level2 oplocks can cause break - notify to be missed. -* BUG 5986: Fix renaming of streams. -* BUG 5990: Strict allocate should be checked before ftruncate. -* BUG 6009: Setting min receivefile size = 1 breaks writes. -* BUG 6016: Alternate Data Streams / Extended Attributes seem to conflict. -* BUG 6017: Fix magic scripts. -* BUG 6019: Fix file corruption in Clustered SMB/NFS environments managed via - CTDB. -* BUG 6021: smbclient du command does not recuse properly. -* BUG 6030: Add missing th header in Status page. -* BUG 6035: Fix possible race between fcntl F_SETLKW and alarm delivery. -* BUG 6040: Calling Samba print server with an aliased DNS-name fails. -* Fix race condition in alarm lock processing. -* Fix logic bug introduce in backport of ccache_regain_all_now. -* Fix crash bug in SWAT. -* Fix logic error in try_chown. -* Fix detection of dns_sd libraries. +* BUG 6099: Samba returns incurrate capabilities list. +* BUG 6133: Cannot delete non-ACL files on Solaris/ZFS/NFSv4 ACL + filesystem. +* BUG 6161: smbclient corrupts source path in tar mode. +* BUG 6195: Migrating from 3.0.x to 3.3.x can fail to update passdb.tdb + correctly. +* BUG 6196: Unable to serve files with colons to Linux CIFS/VFS client. +* BUG 6224: nmbd waits 5 minutes at startup before checking if it needs to + run elections. +* Correctly use chroot(). +* Parameterize in local.h the MAX_RPC_DATA_SIZE, and ensure + that offered read from the rpc packet in spoolss is under + that size. +* Fix Coverity ID 602. +* Backport the semantics of when to delete alternate data streams on a file + truncate. +* Allow set attributes on a stream fnum to be redirected to the base + filename. +* Fix use of streams modules with CIFSFS client. +* Fix more POSIX path lstat calls. +* Allow DFS client paths to work when POSIX pathnames have been + selected. +* Try and fix the build farm RAW-STREAMS errors. + + +o Steven Danneman
[SCM] Samba Shared Repository - branch v3-3-test updated - release-3-2-0pre2-5174-g81d7d62
The branch, v3-3-test has been updated via 81d7d62c339c836ddd7053b5b3624ba36a2c0174 (commit) from 05c038fb86555e2ee26d051ca002eeac1c1669ce (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test - Log - commit 81d7d62c339c836ddd7053b5b3624ba36a2c0174 Author: Karolin Seeger ksee...@samba.org Date: Fri Mar 27 15:01:04 2009 +0100 WHATSNEW: Update changes since 3.3.2. Karolin --- Summary of changes: WHATSNEW.txt | 115 -- 1 files changed, 71 insertions(+), 44 deletions(-) Changeset truncated at 500 lines: diff --git a/WHATSNEW.txt b/WHATSNEW.txt index 968fd37..1979443 100644 --- a/WHATSNEW.txt +++ b/WHATSNEW.txt @@ -1,17 +1,16 @@ = - Release Notes for Samba 3.3.2 - March, 12 2009 + Release Notes for Samba 3.3.3 + April, 1 2009 = This is the latest bugfix release release of the Samba 3.3 series. -Major enhancements in Samba 3.3.2 include: +Major enhancements in Samba 3.3.3 include: + +o Migrating from 3.0.x to 3.3.x can fail to update passdb.tdb + correctly (bug #6195). +o Fix serving of files with colons to CIFS/VFS client (bug #6196). - * Fix force group (bug #6155). - * Fix saving of files on Samba share using MS Office 2007 (bug #6160). - * Fix guest authentication in setups with security = share and - guest ok = yes when Winbind is running. - * Fix corruptions of source path in tar mode of smbclient (bug #6161). ## @@ -19,67 +18,95 @@ Changes ### -Changes since 3.3.1: +Changes since 3.3.2: +o Michael Adam ob...@samba.org +* Add backend_requires_messaging() method to libsmbconf. +* Add methods is_writeable() and wrapper smbconf_is_writeable() to libsmbconf. +* Fall back to file backend when no valid backend was found. +* Fix a memleak in dbwrap_rbt. +* Provide transaction_start|commit|cancel fns for the registry tdb. +* Speed up net conf drop. +* Speed up net conf import. +* Add transactions to the libsmbconf API. +* Reduce memory usage of net conf import. +* Registry cleanup. +* Fix handling of SAMBA_VERSION_VENDOR_PATCH. + + o Jeremy Allison j...@samba.org -* BUG 6082: Fix renaming and deleting of directories using Windows clients. -* BUG 6154: Make ZFS honor admin users. -* BUG 6155: Fix force group. -* BUG 6160: Fix saving of files on Samba share using MS Office 2007. -* BUG 6161: Fix corruptions of source path in tar mode of smbclient. -* Fix some NetBSD warnings. -* Fix bug in processing of open modes in POSIX open. -* Fix use of streams modules with CIFSFS client. -* Ensure ACL modules work with POSIX paths. -* Use fsp-posix_open in preference if we have it. -* Fix more POSIX path lstat calls. +* BUG 6186: Fix map readonly. +* BUG 6195: Migrating from 3.0.x to 3.3.x can fail to update passdb.tdb + correctly. +* BUG 6196: Unable to serve files with colons to Linux CIFS/VFS client. +* BUG 6224: nmbd waits 5 minutes at startup before checking if it needs + to run elections. +* Allow DFS client paths to work when POSIX pathnames have been + selected. +* Try and fix the build farm RAW-STREAMS errors. -o Andrew Tridgell tri...@samba.org -* Fix a bug in message handling for the change notify code. +o Günther Deschner g...@samba.org +* BUG 6102: NetQueryDisplayInformation could return wrong information. +* BUG 6193: Avoid messing with sync_context in libnet_samsync_delta(). +* Fix notify_printer_status_byname. +* Fix Coverity IDs 722, 762, 774, 775, 776. -o Steven Danneman steven.danne...@isilon.com -* Fix guest authentication in setups with security = share and guest ok = - yes when Winbind is running. +o Björn Jacke b...@sernet.de +* Fix build on old Heimdal based systems. +* Fix compile warning. +* Use parentheses in if condition to make negation clear. -o Steve French smfre...@gmail.com -* BUG 4640: Fix guest mounts in mount.cifs. -* Fix displaying the version string properly when no other parameters passed - in in mount.cifs. +o Andy Kelk a...@mopoke.co.uk +* Add dirsort module. -o Björn Jacke b...@sernet.de -* Prefer gssapi header files from subdirectory. +o Steve Langasek vor...@debian.org +* BUG 6147: Fix detection of the GNU ld version. o Volker Lendecke v...@samba.org -* BUG 6124: Fix the build on IRIX. -* BUG 6176: winbindd -n should disable the winbind idmap cache. -* Add a
[SCM] Samba Shared Repository - branch v3-3-test updated - release-3-2-0pre2-5175-g58d3ec1
The branch, v3-3-test has been updated via 58d3ec1cb81d6086d65cd12acd16cd591cf0c71f (commit) from 81d7d62c339c836ddd7053b5b3624ba36a2c0174 (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test - Log - commit 58d3ec1cb81d6086d65cd12acd16cd591cf0c71f Author: Jeremy Allison j...@samba.org Date: Fri Mar 27 12:11:24 2009 -0700 Fix bug #6195 - Migrating from 3.0.x to 3.3.x can fail to update passdb.tdb correctly. For the clustering case. Clustered setups should have only ever used the unsigned version of TDB_DATA in the first place so they can't be in this mess :-). Just do the normal upgrade in the clustered case. Jeremy. --- Summary of changes: source/include/dbwrap.h |2 ++ source/lib/dbwrap.c | 27 +++ source/passdb/pdb_tdb.c |3 ++- 3 files changed, 31 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/source/include/dbwrap.h b/source/include/dbwrap.h index 3381d2d..2208d6e 100644 --- a/source/include/dbwrap.h +++ b/source/include/dbwrap.h @@ -53,6 +53,8 @@ struct db_context { bool persistent; }; +bool db_is_local(const char *name); + struct db_context *db_open(TALLOC_CTX *mem_ctx, const char *name, int hash_size, int tdb_flags, diff --git a/source/lib/dbwrap.c b/source/lib/dbwrap.c index 055f554..126b5c1 100644 --- a/source/lib/dbwrap.c +++ b/source/lib/dbwrap.c @@ -65,6 +65,33 @@ static int dbwrap_fallback_parse_record(struct db_context *db, TDB_DATA key, return res; } +bool db_is_local(const char *name) +{ +#ifdef CLUSTER_SUPPORT + const char *sockname = lp_ctdbd_socket(); + + if(!sockname || !*sockname) { + sockname = CTDB_PATH; + } + + if (lp_clustering() socket_exist(sockname)) { + const char *partname; + /* ctdb only wants the file part of the name */ + partname = strrchr(name, '/'); + if (partname) { + partname++; + } else { + partname = name; + } + /* allow ctdb for individual databases to be disabled */ + if (lp_parm_bool(-1, ctdb, partname, True)) { + return false; + } + } +#endif + return true; +} + /** * open a database */ diff --git a/source/passdb/pdb_tdb.c b/source/passdb/pdb_tdb.c index de49ed2..647b3fa 100644 --- a/source/passdb/pdb_tdb.c +++ b/source/passdb/pdb_tdb.c @@ -322,7 +322,8 @@ static bool tdbsam_convert(struct db_context **pp_db, const char *name, int32 fr struct db_context *db = NULL; int ret; - if (!tdbsam_convert_backup(name, pp_db)) { + /* We only need the update backup for local db's. */ + if (db_is_local(name) !tdbsam_convert_backup(name, pp_db)) { DEBUG(0, (tdbsam_convert: Could not backup %s\n, name)); return false; } -- Samba Shared Repository
[SCM] Samba Shared Repository - branch v3-2-test updated - release-3-2-0pre2-3527-g52fe104
The branch, v3-2-test has been updated via 52fe104996439db24a7e6b17baa7fec47ba230bb (commit) from 7fa853e490be446a6da2086e1749b59a8f741e09 (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-2-test - Log - commit 52fe104996439db24a7e6b17baa7fec47ba230bb Author: Jeremy Allison j...@samba.org Date: Fri Mar 27 12:09:51 2009 -0700 Fix bug #6195 - Migrating from 3.0.x to 3.3.x can fail to update passdb.tdb correctly. For the clustering case. Clustered setups should have only ever used the unsigned version of TDB_DATA in the first place so they can't be in this mess :-). Just do the normal upgrade in the clustered case. Jeremy. --- Summary of changes: source/include/dbwrap.h |2 ++ source/lib/dbwrap.c | 27 +++ source/passdb/pdb_tdb.c |3 ++- 3 files changed, 31 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/source/include/dbwrap.h b/source/include/dbwrap.h index 1f38816..329c191 100644 --- a/source/include/dbwrap.h +++ b/source/include/dbwrap.h @@ -49,6 +49,8 @@ struct db_context { bool persistent; }; +bool db_is_local(const char *name); + struct db_context *db_open(TALLOC_CTX *mem_ctx, const char *name, int hash_size, int tdb_flags, diff --git a/source/lib/dbwrap.c b/source/lib/dbwrap.c index 7fe1631..00182aa 100644 --- a/source/lib/dbwrap.c +++ b/source/lib/dbwrap.c @@ -42,6 +42,33 @@ static int dbwrap_fallback_fetch(struct db_context *db, TALLOC_CTX *mem_ctx, return 0; } +bool db_is_local(const char *name) +{ +#ifdef CLUSTER_SUPPORT + const char *sockname = lp_ctdbd_socket(); + + if(!sockname || !*sockname) { + sockname = CTDB_PATH; + } + + if (lp_clustering() socket_exist(sockname)) { + const char *partname; + /* ctdb only wants the file part of the name */ + partname = strrchr(name, '/'); + if (partname) { + partname++; + } else { + partname = name; + } + /* allow ctdb for individual databases to be disabled */ + if (lp_parm_bool(-1, ctdb, partname, True)) { + return false; + } + } +#endif + return true; +} + /** * If you need transaction support use db_open_trans() */ diff --git a/source/passdb/pdb_tdb.c b/source/passdb/pdb_tdb.c index 9928768..f60517f 100644 --- a/source/passdb/pdb_tdb.c +++ b/source/passdb/pdb_tdb.c @@ -921,7 +921,8 @@ static bool tdbsam_convert(struct db_context **pp_db, const char *name, int32 fr struct db_context *db = NULL; int ret; - if (!tdbsam_convert_backup(name, pp_db)) { + /* We only need the update backup for local db's. */ + if (db_is_local(name) !tdbsam_convert_backup(name, pp_db)) { DEBUG(0, (tdbsam_convert: Could not backup %s\n, name)); return false; } -- Samba Shared Repository
[SCM] Samba Shared Repository - branch v3-4-test updated - release-4-0-0alpha7-591-gede0f69
The branch, v3-4-test has been updated via ede0f69a97abd4f1cb7870b2da65d9198d20c7ad (commit) from d3289c3e7df5951c1634642f026fc7873579b235 (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-4-test - Log - commit ede0f69a97abd4f1cb7870b2da65d9198d20c7ad Author: Jeremy Allison j...@samba.org Date: Fri Mar 27 12:12:30 2009 -0700 Fix bug #6195 - Migrating from 3.0.x to 3.3.x can fail to update passdb.tdb correctly. For the clustering case. Clustered setups should have only ever used the unsigned version of TDB_DATA in the first place so they can't be in this mess :-). Just do the normal upgrade in the clustered case. Jeremy. --- Summary of changes: source3/include/dbwrap.h |2 ++ source3/lib/dbwrap.c | 27 +++ source3/passdb/pdb_tdb.c |3 ++- 3 files changed, 31 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/include/dbwrap.h b/source3/include/dbwrap.h index 16f10cc..1803587 100644 --- a/source3/include/dbwrap.h +++ b/source3/include/dbwrap.h @@ -54,6 +54,8 @@ struct db_context { bool persistent; }; +bool db_is_local(const char *name); + struct db_context *db_open(TALLOC_CTX *mem_ctx, const char *name, int hash_size, int tdb_flags, diff --git a/source3/lib/dbwrap.c b/source3/lib/dbwrap.c index 5e7ce60..67c08a6 100644 --- a/source3/lib/dbwrap.c +++ b/source3/lib/dbwrap.c @@ -65,6 +65,33 @@ static int dbwrap_fallback_parse_record(struct db_context *db, TDB_DATA key, return res; } +bool db_is_local(const char *name) +{ +#ifdef CLUSTER_SUPPORT + const char *sockname = lp_ctdbd_socket(); + + if(!sockname || !*sockname) { + sockname = CTDB_PATH; + } + + if (lp_clustering() socket_exist(sockname)) { + const char *partname; + /* ctdb only wants the file part of the name */ + partname = strrchr(name, '/'); + if (partname) { + partname++; + } else { + partname = name; + } + /* allow ctdb for individual databases to be disabled */ + if (lp_parm_bool(-1, ctdb, partname, True)) { + return false; + } + } +#endif + return true; +} + /** * open a database */ diff --git a/source3/passdb/pdb_tdb.c b/source3/passdb/pdb_tdb.c index 73fcfee..fb40b27 100644 --- a/source3/passdb/pdb_tdb.c +++ b/source3/passdb/pdb_tdb.c @@ -322,7 +322,8 @@ static bool tdbsam_convert(struct db_context **pp_db, const char *name, int32 fr struct db_context *db = NULL; int ret; - if (!tdbsam_convert_backup(name, pp_db)) { + /* We only need the update backup for local db's. */ + if (db_is_local(name) !tdbsam_convert_backup(name, pp_db)) { DEBUG(0, (tdbsam_convert: Could not backup %s\n, name)); return false; } -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha7-767-gd942d24
The branch, master has been updated via d942d248d6207312226d597a59c4772aaae614b1 (commit) from 66b97d36b9a086f2ef76f2d42a07bfdbdaa0f00d (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit d942d248d6207312226d597a59c4772aaae614b1 Author: Jeremy Allison j...@samba.org Date: Fri Mar 27 12:12:30 2009 -0700 Fix bug #6195 - Migrating from 3.0.x to 3.3.x can fail to update passdb.tdb correctly. For the clustering case. Clustered setups should have only ever used the unsigned version of TDB_DATA in the first place so they can't be in this mess :-). Just do the normal upgrade in the clustered case. Jeremy. --- Summary of changes: source3/include/dbwrap.h |2 ++ source3/lib/dbwrap.c | 27 +++ source3/passdb/pdb_tdb.c |3 ++- 3 files changed, 31 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/include/dbwrap.h b/source3/include/dbwrap.h index 16f10cc..1803587 100644 --- a/source3/include/dbwrap.h +++ b/source3/include/dbwrap.h @@ -54,6 +54,8 @@ struct db_context { bool persistent; }; +bool db_is_local(const char *name); + struct db_context *db_open(TALLOC_CTX *mem_ctx, const char *name, int hash_size, int tdb_flags, diff --git a/source3/lib/dbwrap.c b/source3/lib/dbwrap.c index 5e7ce60..67c08a6 100644 --- a/source3/lib/dbwrap.c +++ b/source3/lib/dbwrap.c @@ -65,6 +65,33 @@ static int dbwrap_fallback_parse_record(struct db_context *db, TDB_DATA key, return res; } +bool db_is_local(const char *name) +{ +#ifdef CLUSTER_SUPPORT + const char *sockname = lp_ctdbd_socket(); + + if(!sockname || !*sockname) { + sockname = CTDB_PATH; + } + + if (lp_clustering() socket_exist(sockname)) { + const char *partname; + /* ctdb only wants the file part of the name */ + partname = strrchr(name, '/'); + if (partname) { + partname++; + } else { + partname = name; + } + /* allow ctdb for individual databases to be disabled */ + if (lp_parm_bool(-1, ctdb, partname, True)) { + return false; + } + } +#endif + return true; +} + /** * open a database */ diff --git a/source3/passdb/pdb_tdb.c b/source3/passdb/pdb_tdb.c index 73fcfee..fb40b27 100644 --- a/source3/passdb/pdb_tdb.c +++ b/source3/passdb/pdb_tdb.c @@ -322,7 +322,8 @@ static bool tdbsam_convert(struct db_context **pp_db, const char *name, int32 fr struct db_context *db = NULL; int ret; - if (!tdbsam_convert_backup(name, pp_db)) { + /* We only need the update backup for local db's. */ + if (db_is_local(name) !tdbsam_convert_backup(name, pp_db)) { DEBUG(0, (tdbsam_convert: Could not backup %s\n, name)); return false; } -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha7-768-g4b88f2c
The branch, master has been updated via 4b88f2c17e18f87d8ba0e35e057d7bb8a27614dd (commit) from d942d248d6207312226d597a59c4772aaae614b1 (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 4b88f2c17e18f87d8ba0e35e057d7bb8a27614dd Author: Volker Lendecke v...@samba.org Date: Fri Mar 27 21:11:10 2009 +0100 Fix external np read after conversion to tevent_req --- Summary of changes: source3/rpc_server/srv_pipe_hnd.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/rpc_server/srv_pipe_hnd.c b/source3/rpc_server/srv_pipe_hnd.c index 503e22b..ffb7dde 100644 --- a/source3/rpc_server/srv_pipe_hnd.c +++ b/source3/rpc_server/srv_pipe_hnd.c @@ -1383,7 +1383,7 @@ struct tevent_req *np_read_send(TALLOC_CTX *mem_ctx, struct event_context *ev, static void np_read_trigger(struct tevent_req *req, void *private_data) { - struct np_read_state *state = tevent_req_callback_data( + struct np_read_state *state = tevent_req_data( req, struct np_read_state); struct tevent_req *subreq; -- Samba Shared Repository
[SCM] Samba Shared Repository - branch v3-4-test updated - release-4-0-0alpha7-592-g0d7a37b
The branch, v3-4-test has been updated via 0d7a37be40d7748cb8d685af5412624678b27208 (commit) from ede0f69a97abd4f1cb7870b2da65d9198d20c7ad (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-4-test - Log - commit 0d7a37be40d7748cb8d685af5412624678b27208 Author: Volker Lendecke v...@samba.org Date: Fri Mar 27 21:11:10 2009 +0100 Fix external np read after conversion to tevent_req --- Summary of changes: source3/rpc_server/srv_pipe_hnd.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/rpc_server/srv_pipe_hnd.c b/source3/rpc_server/srv_pipe_hnd.c index 503e22b..ffb7dde 100644 --- a/source3/rpc_server/srv_pipe_hnd.c +++ b/source3/rpc_server/srv_pipe_hnd.c @@ -1383,7 +1383,7 @@ struct tevent_req *np_read_send(TALLOC_CTX *mem_ctx, struct event_context *ev, static void np_read_trigger(struct tevent_req *req, void *private_data) { - struct np_read_state *state = tevent_req_callback_data( + struct np_read_state *state = tevent_req_data( req, struct np_read_state); struct tevent_req *subreq; -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha7-770-g21ad907
The branch, master has been updated via 21ad907aa01d839d405b10809517d491b72184da (commit) via c33f3d5cba21c8cf267daab5450bc95ea7e68967 (commit) from 4b88f2c17e18f87d8ba0e35e057d7bb8a27614dd (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 21ad907aa01d839d405b10809517d491b72184da Author: Derrell Lipman derr...@dworkin.(none) Date: Fri Mar 27 18:03:00 2009 -0400 Ensure parameter types match format string commit c33f3d5cba21c8cf267daab5450bc95ea7e68967 Author: Derrell Lipman derr...@dworkin.(none) Date: Fri Mar 27 18:02:46 2009 -0400 [Bug 6228] SMBC_open_ctx failure due to path resolve failure doesn't set errno Fixed. It turns out there were a number of places where cli_resolve_path() was called and the error path upon that function failing did not set errno. There were a couple of places the failure handling code did set errno to ENOENT, so I made them all consistent, although I think better errno choices for this condition exist, e.g. EHOSTUNREACH. Derrell --- Summary of changes: examples/libsmbclient/testbrowse.c |2 +- examples/libsmbclient/testfstatvfs.c | 21 ++--- examples/libsmbclient/testsmbc.c | 12 +--- examples/libsmbclient/teststatvfs.c | 21 ++--- source3/libsmb/libsmb_dir.c |8 +++- source3/libsmb/libsmb_file.c |7 +++ source3/libsmb/libsmb_stat.c |1 + 7 files changed, 53 insertions(+), 19 deletions(-) Changeset truncated at 500 lines: diff --git a/examples/libsmbclient/testbrowse.c b/examples/libsmbclient/testbrowse.c index a6e6395..c3fb394 100644 --- a/examples/libsmbclient/testbrowse.c +++ b/examples/libsmbclient/testbrowse.c @@ -197,7 +197,7 @@ get_auth_data_with_context_fn(SMBCCTX * context, char * pPassword, int maxLenPassword) { -printf(Authenticating with context 0x%lx, context); +printf(Authenticating with context %p, context); if (context != NULL) { char *user_data = smbc_getOptionUserData(context); printf( with user data %s, user_data); diff --git a/examples/libsmbclient/testfstatvfs.c b/examples/libsmbclient/testfstatvfs.c index b4dafef..73f42d4 100644 --- a/examples/libsmbclient/testfstatvfs.c +++ b/examples/libsmbclient/testfstatvfs.c @@ -75,13 +75,20 @@ int main(int argc, char * argv[]) printf(\n); printf(Block Size: %lu\n, statvfsbuf.f_bsize); printf(Fragment Size: %lu\n, statvfsbuf.f_frsize); -printf(Blocks: %llu\n, statvfsbuf.f_blocks); -printf(Free Blocks: %llu\n, statvfsbuf.f_bfree); -printf(Available Blocks: %llu\n, statvfsbuf.f_bavail); -printf(Files : %llu\n, statvfsbuf.f_files); -printf(Free Files: %llu\n, statvfsbuf.f_ffree); -printf(Available Files: %llu\n, statvfsbuf.f_favail); -printf(File System ID: %lu\n, statvfsbuf.f_fsid); +printf(Blocks: %llu\n, + (unsigned long long) statvfsbuf.f_blocks); +printf(Free Blocks: %llu\n, + (unsigned long long) statvfsbuf.f_bfree); +printf(Available Blocks: %llu\n, + (unsigned long long) statvfsbuf.f_bavail); +printf(Files : %llu\n, + (unsigned long long) statvfsbuf.f_files); +printf(Free Files: %llu\n, + (unsigned long long) statvfsbuf.f_ffree); +printf(Available Files: %llu\n, + (unsigned long long) statvfsbuf.f_favail); +printf(File System ID: %lu\n, + (unsigned long) statvfsbuf.f_fsid); printf(\n); printf(Flags: 0x%lx\n, statvfsbuf.f_flag); diff --git a/examples/libsmbclient/testsmbc.c b/examples/libsmbclient/testsmbc.c index 1f06437..de42428 100644 --- a/examples/libsmbclient/testsmbc.c +++ b/examples/libsmbclient/testsmbc.c @@ -21,6 +21,7 @@ #include stdio.h #include errno.h +#include time.h #include sys/time.h #include string.h #include unistd.h @@ -33,8 +34,12 @@ int global_id = 0; void print_list_fn(struct print_job_info *pji) { - fprintf(stdout, Print job: ID: %u, Prio: %u, Size: %u, User: %s, Name: %s\n, - pji-id, pji-priority, pji-size, pji-user, pji-name); + fprintf(stdout, Print job: ID: %u, Prio: %u, Size: %lu, User: %s, Name: %s\n, + pji-id, + pji-priority, + (unsigned long) pji-size, + pji-user, + pji-name); global_id = pji-id; @@ -137,7 +142,8 @@ int main(int argc, char *argv[]) } - fprintf(stdout, Wrote %d bytes to file: %s\n, sizeof(buff), buff); + fprintf(stdout, Wrote %lu bytes to file: %s\n, + (unsigned long)
[SCM] Samba Shared Repository - branch v3-4-test updated - release-4-0-0alpha7-594-g63d9694
The branch, v3-4-test has been updated via 63d9694d7a0198375fba3a713d6e5d3bbed7a458 (commit) via ebc4c0b50db16cdb11222c3d536a211bb86bcdfd (commit) from 0d7a37be40d7748cb8d685af5412624678b27208 (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-4-test - Log - commit 63d9694d7a0198375fba3a713d6e5d3bbed7a458 Author: Derrell Lipman derr...@dworkin.(none) Date: Fri Mar 27 18:01:39 2009 -0400 Ensure parameter types match format string commit ebc4c0b50db16cdb11222c3d536a211bb86bcdfd Author: Derrell Lipman derr...@dworkin.(none) Date: Fri Mar 27 17:59:09 2009 -0400 [Bug 6228] SMBC_open_ctx failure due to path resolve failure doesn't set errno Fixed. It turns out there were a number of places where cli_resolve_path() was called and the error path upon that function failing did not set errno. There were a couple of places the failure handling code did set errno to ENOENT, so I made them all consistent, although I think better errno choices for this condition exist, e.g. EHOSTUNREACH. Derrell --- Summary of changes: examples/libsmbclient/testbrowse.c |2 +- examples/libsmbclient/testfstatvfs.c | 21 ++--- examples/libsmbclient/testsmbc.c | 12 +--- examples/libsmbclient/teststatvfs.c | 21 ++--- source3/libsmb/libsmb_dir.c |8 +++- source3/libsmb/libsmb_file.c |7 +++ source3/libsmb/libsmb_stat.c |1 + 7 files changed, 53 insertions(+), 19 deletions(-) Changeset truncated at 500 lines: diff --git a/examples/libsmbclient/testbrowse.c b/examples/libsmbclient/testbrowse.c index a6e6395..c3fb394 100644 --- a/examples/libsmbclient/testbrowse.c +++ b/examples/libsmbclient/testbrowse.c @@ -197,7 +197,7 @@ get_auth_data_with_context_fn(SMBCCTX * context, char * pPassword, int maxLenPassword) { -printf(Authenticating with context 0x%lx, context); +printf(Authenticating with context %p, context); if (context != NULL) { char *user_data = smbc_getOptionUserData(context); printf( with user data %s, user_data); diff --git a/examples/libsmbclient/testfstatvfs.c b/examples/libsmbclient/testfstatvfs.c index b4dafef..73f42d4 100644 --- a/examples/libsmbclient/testfstatvfs.c +++ b/examples/libsmbclient/testfstatvfs.c @@ -75,13 +75,20 @@ int main(int argc, char * argv[]) printf(\n); printf(Block Size: %lu\n, statvfsbuf.f_bsize); printf(Fragment Size: %lu\n, statvfsbuf.f_frsize); -printf(Blocks: %llu\n, statvfsbuf.f_blocks); -printf(Free Blocks: %llu\n, statvfsbuf.f_bfree); -printf(Available Blocks: %llu\n, statvfsbuf.f_bavail); -printf(Files : %llu\n, statvfsbuf.f_files); -printf(Free Files: %llu\n, statvfsbuf.f_ffree); -printf(Available Files: %llu\n, statvfsbuf.f_favail); -printf(File System ID: %lu\n, statvfsbuf.f_fsid); +printf(Blocks: %llu\n, + (unsigned long long) statvfsbuf.f_blocks); +printf(Free Blocks: %llu\n, + (unsigned long long) statvfsbuf.f_bfree); +printf(Available Blocks: %llu\n, + (unsigned long long) statvfsbuf.f_bavail); +printf(Files : %llu\n, + (unsigned long long) statvfsbuf.f_files); +printf(Free Files: %llu\n, + (unsigned long long) statvfsbuf.f_ffree); +printf(Available Files: %llu\n, + (unsigned long long) statvfsbuf.f_favail); +printf(File System ID: %lu\n, + (unsigned long) statvfsbuf.f_fsid); printf(\n); printf(Flags: 0x%lx\n, statvfsbuf.f_flag); diff --git a/examples/libsmbclient/testsmbc.c b/examples/libsmbclient/testsmbc.c index 1f06437..de42428 100644 --- a/examples/libsmbclient/testsmbc.c +++ b/examples/libsmbclient/testsmbc.c @@ -21,6 +21,7 @@ #include stdio.h #include errno.h +#include time.h #include sys/time.h #include string.h #include unistd.h @@ -33,8 +34,12 @@ int global_id = 0; void print_list_fn(struct print_job_info *pji) { - fprintf(stdout, Print job: ID: %u, Prio: %u, Size: %u, User: %s, Name: %s\n, - pji-id, pji-priority, pji-size, pji-user, pji-name); + fprintf(stdout, Print job: ID: %u, Prio: %u, Size: %lu, User: %s, Name: %s\n, + pji-id, + pji-priority, + (unsigned long) pji-size, + pji-user, + pji-name); global_id = pji-id; @@ -137,7 +142,8 @@ int main(int argc, char *argv[]) } - fprintf(stdout, Wrote %d bytes to file: %s\n, sizeof(buff), buff); + fprintf(stdout, Wrote %lu bytes to file: %s\n, + (unsigned long)
[SCM] Samba Shared Repository - branch v3-3-test updated - release-3-2-0pre2-5177-gb24583e
The branch, v3-3-test has been updated via b24583e17ac845d327e1f20f4c6f30215bb3815e (commit) via d72271908e0d67eb31fbc1d818d6f2c720bd7fbb (commit) from 58d3ec1cb81d6086d65cd12acd16cd591cf0c71f (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test - Log - commit b24583e17ac845d327e1f20f4c6f30215bb3815e Merge: d72271908e0d67eb31fbc1d818d6f2c720bd7fbb 58d3ec1cb81d6086d65cd12acd16cd591cf0c71f Author: Derrell Lipman derr...@dworkin.(none) Date: Fri Mar 27 18:03:36 2009 -0400 Merge branch 'v3-3-test' of ssh://git.samba.org/data/git/samba into v3-3-test commit d72271908e0d67eb31fbc1d818d6f2c720bd7fbb Author: Derrell Lipman derr...@dworkin.(none) Date: Fri Mar 27 16:56:33 2009 -0400 [Bug 6228] SMBC_open_ctx failure due to path resolve failure doesn't set errno Fixed. It turns out there were a number of places where cli_resolve_path() was called and the error path upon that function failing did not set errno. There were a couple of places the failure handling code did set errno to ENOENT, so I made them all consistent, although I think better errno choices for this condition exist, e.g. EHOSTUNREACH. Derrell --- Summary of changes: source/libsmb/libsmb_dir.c |8 +++- source/libsmb/libsmb_file.c |7 +++ source/libsmb/libsmb_stat.c |1 + 3 files changed, 15 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/source/libsmb/libsmb_dir.c b/source/libsmb/libsmb_dir.c index 89782ce..8846abb 100644 --- a/source/libsmb/libsmb_dir.c +++ b/source/libsmb/libsmb_dir.c @@ -1169,7 +1169,8 @@ SMBC_mkdir_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); - TALLOC_FREE(frame); +errno = ENOENT; +TALLOC_FREE(frame); return -1; } /*d_printf(mkdir: resolved path as %s\n, targetpath);*/ @@ -1276,6 +1277,7 @@ SMBC_rmdir_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); +errno = ENOENT; TALLOC_FREE(frame); return -1; } @@ -1558,6 +1560,7 @@ SMBC_chmod_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); +errno = ENOENT; TALLOC_FREE(frame); return -1; } @@ -1749,6 +1752,7 @@ SMBC_unlink_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); +errno = ENOENT; TALLOC_FREE(frame); return -1; } @@ -1921,6 +1925,7 @@ SMBC_rename_ctx(SMBCCTX *ocontext, if (!cli_resolve_path(frame, , srv-cli, path1, targetcli1, targetpath1)) { d_printf(Could not resolve %s\n, path1); +errno = ENOENT; TALLOC_FREE(frame); return -1; } @@ -1936,6 +1941,7 @@ SMBC_rename_ctx(SMBCCTX *ocontext, if (!cli_resolve_path(frame, , srv-cli, path2, targetcli2, targetpath2)) { d_printf(Could not resolve %s\n, path2); +errno = ENOENT; TALLOC_FREE(frame); return -1; } diff --git a/source/libsmb/libsmb_file.c b/source/libsmb/libsmb_file.c index 1bbb47d..8741ed6 100644 --- a/source/libsmb/libsmb_file.c +++ b/source/libsmb/libsmb_file.c @@ -118,6 +118,7 @@ SMBC_open_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); +errno = ENOENT; SAFE_FREE(file); TALLOC_FREE(frame); return NULL; @@ -298,6 +299,7 @@ SMBC_read_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , file-srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); +errno = ENOENT; TALLOC_FREE(frame); return -1; } @@ -387,6 +389,7 @@ SMBC_write_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , file-srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); +errno =
[SCM] Samba Shared Repository - branch v3-2-test updated - release-3-2-0pre2-3528-gf4e68b0
The branch, v3-2-test has been updated via f4e68b09a6ba30d968bccfad8bf6b67b4456b111 (commit) from 52fe104996439db24a7e6b17baa7fec47ba230bb (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-2-test - Log - commit f4e68b09a6ba30d968bccfad8bf6b67b4456b111 Author: Derrell Lipman derr...@dworkin.(none) Date: Fri Mar 27 17:10:04 2009 -0400 [Bug 6228] SMBC_open_ctx failure due to path resolve failure doesn't set errno Fixed. It turns out there were a number of places where cli_resolve_path() was called and the error path upon that function failing did not set errno. There were a couple of places the failure handling code did set errno to ENOENT, so I made them all consistent, although I think better errno choices for this condition exist, e.g. EHOSTUNREACH. Derrell --- Summary of changes: source/libsmb/libsmb_dir.c |8 +++- source/libsmb/libsmb_file.c |7 +++ source/libsmb/libsmb_stat.c |1 + 3 files changed, 15 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/source/libsmb/libsmb_dir.c b/source/libsmb/libsmb_dir.c index b0762e8..8ce660a 100644 --- a/source/libsmb/libsmb_dir.c +++ b/source/libsmb/libsmb_dir.c @@ -1168,7 +1168,8 @@ SMBC_mkdir_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); - TALLOC_FREE(frame); +errno = ENOENT; +TALLOC_FREE(frame); return -1; } /*d_printf(mkdir: resolved path as %s\n, targetpath);*/ @@ -1275,6 +1276,7 @@ SMBC_rmdir_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); +errno = ENOENT; TALLOC_FREE(frame); return -1; } @@ -1738,6 +1740,8 @@ SMBC_unlink_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); +errno = ENOENT; +errno = ENOENT; TALLOC_FREE(frame); return -1; } @@ -1904,6 +1908,7 @@ SMBC_rename_ctx(SMBCCTX *ocontext, if (!cli_resolve_path(frame, , srv-cli, path1, targetcli1, targetpath1)) { d_printf(Could not resolve %s\n, path1); +errno = ENOENT; TALLOC_FREE(frame); return -1; } @@ -1912,6 +1917,7 @@ SMBC_rename_ctx(SMBCCTX *ocontext, if (!cli_resolve_path(frame, , srv-cli, path2, targetcli2, targetpath2)) { d_printf(Could not resolve %s\n, path2); +errno = ENOENT; TALLOC_FREE(frame); return -1; } diff --git a/source/libsmb/libsmb_file.c b/source/libsmb/libsmb_file.c index 27b7e4f..a8c2629 100644 --- a/source/libsmb/libsmb_file.c +++ b/source/libsmb/libsmb_file.c @@ -118,6 +118,7 @@ SMBC_open_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); +errno = ENOENT; SAFE_FREE(file); TALLOC_FREE(frame); return NULL; @@ -298,6 +299,7 @@ SMBC_read_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , file-srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); +errno = ENOENT; TALLOC_FREE(frame); return -1; } @@ -387,6 +389,7 @@ SMBC_write_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , file-srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); +errno = ENOENT; TALLOC_FREE(frame); return -1; } @@ -462,6 +465,7 @@ SMBC_close_ctx(SMBCCTX *context, if (!cli_resolve_path(frame, , file-srv-cli, path, targetcli, targetpath)) { d_printf(Could not resolve %s\n, path); +errno = ENOENT; TALLOC_FREE(frame); return -1; } @@ -544,6 +548,7 @@ SMBC_getatr(SMBCCTX * context, if (!cli_resolve_path(frame, , srv-cli, fixedpath, targetcli, targetpath)) { d_printf(Couldn't resolve %s\n, path); +errno =
Build status as of Sat Mar 28 00:00:02 2009
URL: http://build.samba.org/ --- /home/build/master/cache/broken_results.txt.old 2009-03-27 00:00:24.0 + +++ /home/build/master/cache/broken_results.txt 2009-03-28 00:00:26.0 + @@ -1,9 +1,9 @@ -Build status as of Fri Mar 27 00:00:02 2009 +Build status as of Sat Mar 28 00:00:02 2009 Build counts: Tree Total Broken Panic build_farm 0 0 0 -ccache 29 5 0 +ccache 30 5 0 ctdb 0 0 0 distcc 0 0 0 ldb 30 30 0 @@ -14,10 +14,10 @@ rsync30 10 0 samba-docs 0 0 0 samba-gtk6 6 0 -samba_3_X_devel 29 27 0 +samba_3_X_devel 29 25 0 samba_3_X_test 28 21 0 -samba_4_0_test 30 29 1 +samba_4_0_test 29 29 0 smb-build29 6 0 talloc 30 30 0 -tdb 28 9 0 +tdb 27 9 0
[SCM] Samba Shared Repository - branch v3-4-test updated - release-4-0-0alpha7-595-g1aa65f4
The branch, v3-4-test has been updated via 1aa65f485b60a80766581e7d3f31565f340aa528 (commit) from 63d9694d7a0198375fba3a713d6e5d3bbed7a458 (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-4-test - Log - commit 1aa65f485b60a80766581e7d3f31565f340aa528 Author: Björn Jacke b...@sernet.de Date: Fri Mar 27 10:24:18 2009 +0100 s3: ifdef sendfile code that's only used in other ifdef'ed sendfile code This fixes a defined but not used compile warning. --- Summary of changes: source3/smbd/reply.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c index 1ee4708..5cdc59b 100644 --- a/source3/smbd/reply.c +++ b/source3/smbd/reply.c @@ -2679,6 +2679,7 @@ static ssize_t fake_sendfile(files_struct *fsp, SMB_OFF_T startpos, return (ssize_t)nread; } +#if defined(WITH_SENDFILE) / Deal with the case of sendfile reading less bytes from the file than requested. Fill with zeros (all we can do). @@ -2735,6 +2736,7 @@ static void sendfile_short_send(files_struct *fsp, SAFE_FREE(buf); } } +#endif /* defined WITH_SENDFILE */ / Return a readbraw error (4 bytes of zero). -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha7-771-gee22c41
The branch, master has been updated via ee22c417f3ae156522151815605300c703eeb664 (commit) from 21ad907aa01d839d405b10809517d491b72184da (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit ee22c417f3ae156522151815605300c703eeb664 Author: Scott Urban scott.ur...@isilon.com Date: Fri Mar 27 17:33:26 2009 -0700 s3: added per-client statistics to onefs perfcount module * we now track, uid, remote ip, and local ip per CIFS operation * removed perfcount_set_client() from perfcount interface as it's unecessary --- Summary of changes: source3/include/smb_perfcount.h |8 - source3/modules/perfcount_onefs.c | 52 +++-- source3/modules/perfcount_test.c |9 -- 3 files changed, 38 insertions(+), 31 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/include/smb_perfcount.h b/source3/include/smb_perfcount.h index 01a539d..9c83147 100644 --- a/source3/include/smb_perfcount.h +++ b/source3/include/smb_perfcount.h @@ -37,8 +37,6 @@ struct smb_perfcount_handlers { uint64_t in_bytes); void (*perfcount_set_msglen_out) (struct smb_perfcount_data *pcd, uint64_t out_bytes); - void (*perfcount_set_client) (struct smb_perfcount_data *pcd, uid_t uid, - const char *user, const char *domain); void (*perfcount_copy_context) (struct smb_perfcount_data *pcd, struct smb_perfcount_data *new_pcd); void (*perfcount_defer_op) (struct smb_perfcount_data *pcd, @@ -88,12 +86,6 @@ void smb_init_perfcount_data(struct smb_perfcount_data *pcd); (_pcd_)-handlers-perfcount_set_msglen_out((_pcd_), (_out_));\ } while (0) -#define SMB_PERFCOUNT_SET_CLIENT(_pcd_,_uid_, _user_, _domain_) \ -do {if((_pcd_) (_pcd_)-handlers) \ - (_pcd_)-handlers-perfcount_set_client((_pcd_), (_uid_), \ - (_user_), (_domain_)); \ -} while (0) - #define SMB_PERFCOUNT_COPY_CONTEXT(_pcd_, _new_pcd_) \ do {if((_pcd_) (_pcd_)-handlers) \ (_pcd_)-handlers-perfcount_copy_context((_pcd_), (_new_pcd_)); \ diff --git a/source3/modules/perfcount_onefs.c b/source3/modules/perfcount_onefs.c index 9b35af6..066a7f1 100644 --- a/source3/modules/perfcount_onefs.c +++ b/source3/modules/perfcount_onefs.c @@ -20,8 +20,11 @@ #include includes.h #include sys/isi_stats_protocol.h +#include sys/isi_stats_client.h #include sys/isi_stats_cifs.h +extern struct current_user current_user; + struct onefs_op_counter { struct isp_op_delta iod; struct onefs_op_counter *next; @@ -282,42 +285,64 @@ static void onefs_smb_statistics_defer_op(struct smb_perfcount_data *pcd, pcd-context = NULL; } -static void onefs_smb_statistics_set_client(struct smb_perfcount_data *pcd, - uid_t uid, const char *user, - const char *domain) -{ - // not implemented... - return; -} - static void onefs_smb_statistics_end(struct smb_perfcount_data *pcd) { struct onefs_stats_context *ctxt = pcd-context; struct onefs_op_counter *tmp; + uint64_t uid; + + static in_addr_t rem_addr = 0; + static in_addr_t loc_addr = 0; /* not enabled */ if (pcd-context == NULL) return; + uid = current_user.ut.uid ? current_user.ut.uid : ISC_UNKNOWN_CLIENT_ID; + + /* get address info once, doesn't change for process */ + if (rem_addr == 0) { + struct sockaddr_storage sa; + socklen_t sa_len; + int fd = smbd_server_fd(); + + sa_len = sizeof sa; + if (getpeername(fd, (struct sockaddr *)sa, sa_len) == 0 + sa.ss_family == AF_INET) + rem_addr = ((struct sockaddr_in *)sa)-sin_addr.s_addr; + else + rem_addr = ISC_MASKED_ADDR; + + sa_len = sizeof sa; + if (getsockname(fd, (struct sockaddr *)sa, sa_len) == 0 + sa.ss_family == AF_INET) + loc_addr = ((struct sockaddr_in *)sa)-sin_addr.s_addr; + else + loc_addr = ISC_MASKED_ADDR; + } + /* * bug here - we aren't getting the outlens right, * when dealing w/ chained requests. */ for (tmp = ctxt-ops_chain; tmp; tmp = tmp-next) { tmp-iod.out_bytes = ctxt-iod.out_bytes; + isc_cookie_init(tmp-iod.cookie, rem_addr, loc_addr, uid); ISP_OP_END(tmp-iod); #ifdef ONEFS_PERF_DEBUG - DEBUG(0,( Finalized CHAIN
[SCM] Samba Shared Repository - branch v3-2-test updated - release-3-2-0pre2-3529-g10b5185
The branch, v3-2-test has been updated via 10b518592e616ecfaadd829ecd0674a04510b422 (commit) from f4e68b09a6ba30d968bccfad8bf6b67b4456b111 (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-2-test - Log - commit 10b518592e616ecfaadd829ecd0674a04510b422 Author: Jeremy Allison j...@samba.org Date: Fri Mar 27 21:26:56 2009 -0700 Fix the problem of 3.0.x passdb databases being version 3 but using a different hash calculation than 3.2.x passwd databases (also version 3). Introduces a minor version number. Jeremy. --- Summary of changes: source/passdb/pdb_tdb.c | 48 ++ 1 files changed, 43 insertions(+), 5 deletions(-) Changeset truncated at 500 lines: diff --git a/source/passdb/pdb_tdb.c b/source/passdb/pdb_tdb.c index f60517f..f8fd11d 100644 --- a/source/passdb/pdb_tdb.c +++ b/source/passdb/pdb_tdb.c @@ -4,7 +4,7 @@ * Copyright (C) Andrew Tridgell 1992-1998 * Copyright (C) Simo Sorce2000-2003 * Copyright (C) Gerald Carter 2000-2006 - * Copyright (C) Jeremy Allison2001 + * Copyright (C) Jeremy Allison2001-2009 * Copyright (C) Andrew Bartlett 2002 * Copyright (C) Jim McDonough j...@us.ibm.com 2005 * @@ -38,7 +38,9 @@ static int tdbsam_debug_level = DBGC_ALL; #endif #define TDBSAM_VERSION 3 /* Most recent TDBSAM version */ +#define TDBSAM_MINOR_VERSION 1 /* Most recent TDBSAM minor version */ #define TDBSAM_VERSION_STRING INFO/version +#define TDBSAM_MINOR_VERSION_STRINGINFO/minor_version #define PASSDB_FILE_NAME passdb.tdb #define USERPREFIX USER_ #define USERPREFIX_LEN 5 @@ -953,6 +955,12 @@ static bool tdbsam_convert(struct db_context **pp_db, const char *name, int32 fr goto cancel; } + if (dbwrap_store_int32(db, TDBSAM_MINOR_VERSION_STRING, + TDBSAM_MINOR_VERSION) != 0) { + DEBUG(0, (tdbsam_convert: Could not store tdbsam minor version\n)); + goto cancel; + } + if (db-transaction_commit(db) != 0) { DEBUG(0, (tdbsam_convert: Could not commit transaction\n)); goto cancel; @@ -976,6 +984,7 @@ static bool tdbsam_convert(struct db_context **pp_db, const char *name, int32 fr static bool tdbsam_open( const char *name ) { int32 version; + int32 minor_version; /* check if we are already open */ @@ -998,6 +1007,12 @@ static bool tdbsam_open( const char *name ) version = 0;/* Version not found, assume version 0 */ } + /* Get the minor version */ + minor_version = dbwrap_fetch_int32(db_sam, TDBSAM_MINOR_VERSION_STRING); + if (minor_version == -1) { + minor_version = 0; /* Minor version not found, assume 0 */ + } + /* Compare the version */ if (version TDBSAM_VERSION) { /* Version more recent than the latest known */ @@ -1006,7 +1021,9 @@ static bool tdbsam_open( const char *name ) return false; } - if ( version TDBSAM_VERSION ) { + if ( version TDBSAM_VERSION || + (version == TDBSAM_VERSION +minor_version TDBSAM_MINOR_VERSION) ) { /* * Ok - we think we're going to have to convert. * Due to the backup process we now must do to @@ -1031,6 +1048,12 @@ static bool tdbsam_open( const char *name ) version = 0;/* Version not found, assume version 0 */ } + /* Re-check the minor version */ + minor_version = dbwrap_fetch_int32(db_sam, TDBSAM_MINOR_VERSION_STRING); + if (minor_version == -1) { + minor_version = 0; /* Minor version not found, assume 0 */ + } + /* Compare the version */ if (version TDBSAM_VERSION) { /* Version more recent than the latest known */ @@ -1040,9 +1063,24 @@ static bool tdbsam_open( const char *name ) return false; } - if ( version TDBSAM_VERSION ) { - DEBUG(1, (tdbsam_open: Converting version %d database to - version %d.\n, version, TDBSAM_VERSION)); + if ( version TDBSAM_VERSION || + (version == TDBSAM_VERSION +minor_version TDBSAM_MINOR_VERSION) ) { + /* +* Note that minor versions we read that are greater +* than the current minor version we have hard coded +* are assumed to be compatible if they have the same +
[SCM] Samba Shared Repository - branch v3-3-test updated - release-3-2-0pre2-5178-gd30f1fc
The branch, v3-3-test has been updated via d30f1fc69dd1e56d46f90f7e60f13c1d383f6376 (commit) from b24583e17ac845d327e1f20f4c6f30215bb3815e (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test - Log - commit d30f1fc69dd1e56d46f90f7e60f13c1d383f6376 Author: Jeremy Allison j...@samba.org Date: Fri Mar 27 21:28:01 2009 -0700 Fix the problem of 3.0.x passdb databases being version 3 but using a different hash calculation than 3.2.x passwd databases (also version 3). Introduces a minor version number. Jeremy. --- Summary of changes: source/passdb/pdb_tdb.c | 48 ++ 1 files changed, 43 insertions(+), 5 deletions(-) Changeset truncated at 500 lines: diff --git a/source/passdb/pdb_tdb.c b/source/passdb/pdb_tdb.c index 647b3fa..1f3441a 100644 --- a/source/passdb/pdb_tdb.c +++ b/source/passdb/pdb_tdb.c @@ -4,7 +4,7 @@ * Copyright (C) Andrew Tridgell 1992-1998 * Copyright (C) Simo Sorce2000-2003 * Copyright (C) Gerald Carter 2000-2006 - * Copyright (C) Jeremy Allison2001 + * Copyright (C) Jeremy Allison2001-2009 * Copyright (C) Andrew Bartlett 2002 * Copyright (C) Jim McDonough j...@us.ibm.com 2005 * @@ -38,7 +38,9 @@ static int tdbsam_debug_level = DBGC_ALL; #endif #define TDBSAM_VERSION 4 /* Most recent TDBSAM version */ +#define TDBSAM_MINOR_VERSION 0 /* Most recent TDBSAM minor version */ #define TDBSAM_VERSION_STRING INFO/version +#define TDBSAM_MINOR_VERSION_STRINGINFO/minor_version #define PASSDB_FILE_NAME passdb.tdb #define USERPREFIX USER_ #define USERPREFIX_LEN 5 @@ -359,6 +361,12 @@ static bool tdbsam_convert(struct db_context **pp_db, const char *name, int32 fr goto cancel; } + if (dbwrap_store_int32(db, TDBSAM_MINOR_VERSION_STRING, + TDBSAM_MINOR_VERSION) != 0) { + DEBUG(0, (tdbsam_convert: Could not store tdbsam minor version\n)); + goto cancel; + } + if (db-transaction_commit(db) != 0) { DEBUG(0, (tdbsam_convert: Could not commit transaction\n)); return false; @@ -382,6 +390,7 @@ static bool tdbsam_convert(struct db_context **pp_db, const char *name, int32 fr static bool tdbsam_open( const char *name ) { int32 version; + int32 minor_version; /* check if we are already open */ @@ -404,6 +413,12 @@ static bool tdbsam_open( const char *name ) version = 0;/* Version not found, assume version 0 */ } + /* Get the minor version */ + minor_version = dbwrap_fetch_int32(db_sam, TDBSAM_MINOR_VERSION_STRING); + if (minor_version == -1) { + minor_version = 0; /* Minor version not found, assume 0 */ + } + /* Compare the version */ if (version TDBSAM_VERSION) { /* Version more recent than the latest known */ @@ -412,7 +427,9 @@ static bool tdbsam_open( const char *name ) return false; } - if ( version TDBSAM_VERSION ) { + if ( version TDBSAM_VERSION || + (version == TDBSAM_VERSION +minor_version TDBSAM_MINOR_VERSION) ) { /* * Ok - we think we're going to have to convert. * Due to the backup process we now must do to @@ -437,6 +454,12 @@ static bool tdbsam_open( const char *name ) version = 0;/* Version not found, assume version 0 */ } + /* Re-check the minor version */ + minor_version = dbwrap_fetch_int32(db_sam, TDBSAM_MINOR_VERSION_STRING); + if (minor_version == -1) { + minor_version = 0; /* Minor version not found, assume 0 */ + } + /* Compare the version */ if (version TDBSAM_VERSION) { /* Version more recent than the latest known */ @@ -446,9 +469,24 @@ static bool tdbsam_open( const char *name ) return false; } - if ( version TDBSAM_VERSION ) { - DEBUG(1, (tdbsam_open: Converting version %d database to - version %d.\n, version, TDBSAM_VERSION)); + if ( version TDBSAM_VERSION || + (version == TDBSAM_VERSION +minor_version TDBSAM_MINOR_VERSION) ) { + /* +* Note that minor versions we read that are greater +* than the current minor version we have hard coded +* are assumed to be compatible if they have the same +
[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha7-772-g0b890ae
The branch, master has been updated via 0b890ae19a6e9dad9bdff248ada3fdee9416ab96 (commit) from ee22c417f3ae156522151815605300c703eeb664 (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 0b890ae19a6e9dad9bdff248ada3fdee9416ab96 Author: Jeremy Allison j...@samba.org Date: Fri Mar 27 21:29:37 2009 -0700 Fix the problem of 3.0.x passdb databases being version 3 but using a different hash calculation than 3.2.x passwd databases (also version 3). Introduces a minor version number. Jeremy. --- Summary of changes: source3/passdb/pdb_tdb.c | 48 + 1 files changed, 43 insertions(+), 5 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/passdb/pdb_tdb.c b/source3/passdb/pdb_tdb.c index fb40b27..1060733 100644 --- a/source3/passdb/pdb_tdb.c +++ b/source3/passdb/pdb_tdb.c @@ -4,7 +4,7 @@ * Copyright (C) Andrew Tridgell 1992-1998 * Copyright (C) Simo Sorce2000-2003 * Copyright (C) Gerald Carter 2000-2006 - * Copyright (C) Jeremy Allison2001 + * Copyright (C) Jeremy Allison2001-2009 * Copyright (C) Andrew Bartlett 2002 * Copyright (C) Jim McDonough j...@us.ibm.com 2005 * @@ -38,7 +38,9 @@ static int tdbsam_debug_level = DBGC_ALL; #endif #define TDBSAM_VERSION 4 /* Most recent TDBSAM version */ +#define TDBSAM_MINOR_VERSION 0 /* Most recent TDBSAM minor version */ #define TDBSAM_VERSION_STRING INFO/version +#define TDBSAM_MINOR_VERSION_STRINGINFO/minor_version #define PASSDB_FILE_NAME passdb.tdb #define USERPREFIX USER_ #define USERPREFIX_LEN 5 @@ -359,6 +361,12 @@ static bool tdbsam_convert(struct db_context **pp_db, const char *name, int32 fr goto cancel; } + if (dbwrap_store_int32(db, TDBSAM_MINOR_VERSION_STRING, + TDBSAM_MINOR_VERSION) != 0) { + DEBUG(0, (tdbsam_convert: Could not store tdbsam minor version\n)); + goto cancel; + } + if (db-transaction_commit(db) != 0) { DEBUG(0, (tdbsam_convert: Could not commit transaction\n)); return false; @@ -382,6 +390,7 @@ static bool tdbsam_convert(struct db_context **pp_db, const char *name, int32 fr static bool tdbsam_open( const char *name ) { int32 version; + int32 minor_version; /* check if we are already open */ @@ -404,6 +413,12 @@ static bool tdbsam_open( const char *name ) version = 0;/* Version not found, assume version 0 */ } + /* Get the minor version */ + minor_version = dbwrap_fetch_int32(db_sam, TDBSAM_MINOR_VERSION_STRING); + if (minor_version == -1) { + minor_version = 0; /* Minor version not found, assume 0 */ + } + /* Compare the version */ if (version TDBSAM_VERSION) { /* Version more recent than the latest known */ @@ -412,7 +427,9 @@ static bool tdbsam_open( const char *name ) return false; } - if ( version TDBSAM_VERSION ) { + if ( version TDBSAM_VERSION || + (version == TDBSAM_VERSION +minor_version TDBSAM_MINOR_VERSION) ) { /* * Ok - we think we're going to have to convert. * Due to the backup process we now must do to @@ -437,6 +454,12 @@ static bool tdbsam_open( const char *name ) version = 0;/* Version not found, assume version 0 */ } + /* Re-check the minor version */ + minor_version = dbwrap_fetch_int32(db_sam, TDBSAM_MINOR_VERSION_STRING); + if (minor_version == -1) { + minor_version = 0; /* Minor version not found, assume 0 */ + } + /* Compare the version */ if (version TDBSAM_VERSION) { /* Version more recent than the latest known */ @@ -446,9 +469,24 @@ static bool tdbsam_open( const char *name ) return false; } - if ( version TDBSAM_VERSION ) { - DEBUG(1, (tdbsam_open: Converting version %d database to - version %d.\n, version, TDBSAM_VERSION)); + if ( version TDBSAM_VERSION || + (version == TDBSAM_VERSION +minor_version TDBSAM_MINOR_VERSION) ) { + /* +* Note that minor versions we read that are greater +* than the current minor version we have hard coded +* are assumed to be compatible if they have the same +
[SCM] Samba Shared Repository - branch v3-4-test updated - release-4-0-0alpha7-596-g7d3b859
The branch, v3-4-test has been updated via 7d3b85999c6d2521ef2f9a5aace52c9a19bf2f42 (commit) from 1aa65f485b60a80766581e7d3f31565f340aa528 (commit) http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-4-test - Log - commit 7d3b85999c6d2521ef2f9a5aace52c9a19bf2f42 Author: Jeremy Allison j...@samba.org Date: Fri Mar 27 21:29:37 2009 -0700 Fix the problem of 3.0.x passdb databases being version 3 but using a different hash calculation than 3.2.x passwd databases (also version 3). Introduces a minor version number. Jeremy. --- Summary of changes: source3/passdb/pdb_tdb.c | 48 + 1 files changed, 43 insertions(+), 5 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/passdb/pdb_tdb.c b/source3/passdb/pdb_tdb.c index fb40b27..1060733 100644 --- a/source3/passdb/pdb_tdb.c +++ b/source3/passdb/pdb_tdb.c @@ -4,7 +4,7 @@ * Copyright (C) Andrew Tridgell 1992-1998 * Copyright (C) Simo Sorce2000-2003 * Copyright (C) Gerald Carter 2000-2006 - * Copyright (C) Jeremy Allison2001 + * Copyright (C) Jeremy Allison2001-2009 * Copyright (C) Andrew Bartlett 2002 * Copyright (C) Jim McDonough j...@us.ibm.com 2005 * @@ -38,7 +38,9 @@ static int tdbsam_debug_level = DBGC_ALL; #endif #define TDBSAM_VERSION 4 /* Most recent TDBSAM version */ +#define TDBSAM_MINOR_VERSION 0 /* Most recent TDBSAM minor version */ #define TDBSAM_VERSION_STRING INFO/version +#define TDBSAM_MINOR_VERSION_STRINGINFO/minor_version #define PASSDB_FILE_NAME passdb.tdb #define USERPREFIX USER_ #define USERPREFIX_LEN 5 @@ -359,6 +361,12 @@ static bool tdbsam_convert(struct db_context **pp_db, const char *name, int32 fr goto cancel; } + if (dbwrap_store_int32(db, TDBSAM_MINOR_VERSION_STRING, + TDBSAM_MINOR_VERSION) != 0) { + DEBUG(0, (tdbsam_convert: Could not store tdbsam minor version\n)); + goto cancel; + } + if (db-transaction_commit(db) != 0) { DEBUG(0, (tdbsam_convert: Could not commit transaction\n)); return false; @@ -382,6 +390,7 @@ static bool tdbsam_convert(struct db_context **pp_db, const char *name, int32 fr static bool tdbsam_open( const char *name ) { int32 version; + int32 minor_version; /* check if we are already open */ @@ -404,6 +413,12 @@ static bool tdbsam_open( const char *name ) version = 0;/* Version not found, assume version 0 */ } + /* Get the minor version */ + minor_version = dbwrap_fetch_int32(db_sam, TDBSAM_MINOR_VERSION_STRING); + if (minor_version == -1) { + minor_version = 0; /* Minor version not found, assume 0 */ + } + /* Compare the version */ if (version TDBSAM_VERSION) { /* Version more recent than the latest known */ @@ -412,7 +427,9 @@ static bool tdbsam_open( const char *name ) return false; } - if ( version TDBSAM_VERSION ) { + if ( version TDBSAM_VERSION || + (version == TDBSAM_VERSION +minor_version TDBSAM_MINOR_VERSION) ) { /* * Ok - we think we're going to have to convert. * Due to the backup process we now must do to @@ -437,6 +454,12 @@ static bool tdbsam_open( const char *name ) version = 0;/* Version not found, assume version 0 */ } + /* Re-check the minor version */ + minor_version = dbwrap_fetch_int32(db_sam, TDBSAM_MINOR_VERSION_STRING); + if (minor_version == -1) { + minor_version = 0; /* Minor version not found, assume 0 */ + } + /* Compare the version */ if (version TDBSAM_VERSION) { /* Version more recent than the latest known */ @@ -446,9 +469,24 @@ static bool tdbsam_open( const char *name ) return false; } - if ( version TDBSAM_VERSION ) { - DEBUG(1, (tdbsam_open: Converting version %d database to - version %d.\n, version, TDBSAM_VERSION)); + if ( version TDBSAM_VERSION || + (version == TDBSAM_VERSION +minor_version TDBSAM_MINOR_VERSION) ) { + /* +* Note that minor versions we read that are greater +* than the current minor version we have hard coded +* are assumed to be compatible if they have the same +