summaryrefslogtreecommitdiffstats
path: root/source/param/loadparm.c
Commit message (Collapse)AuthorAgeFilesLines
* This is another *BIG* change...Andrew Bartlett2002-01-201-1/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Samba now features a pluggable passdb interface, along the same lines as the one in use in the auth subsystem. In this case, only one backend may be active at a time by the 'normal' interface, and only one backend per passdb_context is permitted outside that. This pluggable interface is designed to allow any number of passdb backends to be compiled in, with the selection at runtime. The 'passdb backend' paramater has been created (and documented!) to support this. As such, configure has been modfied to allow (for example) --with-ldap and the old smbpasswd to be selected at the same time. This patch also introduces two new backends: smbpasswd_nua and tdbsam_nua. These two backends accept 'non unix accounts', where the user does *not* exist in /etc/passwd. These accounts' don't have UIDs in the unix sense, but to avoid conflicts in the algroitmic mapping of RIDs, they use the values specified in the 'non unix account range' paramter - in the same way as the winbind ranges are specifed. While I was at it, I cleaned up some of the code in pdb_tdb (code copied directly from smbpasswd and not really considered properly). Most of this was to do with % macro expansion on stored data. It isn't easy to get the macros into the tdb, and the first password change will 'expand' them. tdbsam needs to use a similar system to pdb_ldap in this regard. This patch only makes minor adjustments to pdb_nisplus and pdb_ldap, becouse I don't have the test facilities for these. I plan to incoroprate at least pdb_ldap into this scheme after consultation with Jerry. Each (converted) passdb module now no longer has any 'static' variables, and only exports 1 init function outside its .c file. The non-unix-account support in this patch has been proven! It is now possible to join a win2k machine to a Samba PDC without an account in /etc/passwd! Other changes: Minor interface adjustments: pdb_delete_sam_account() now takes a SAM_ACCOUNT, not a char*. pdb_update_sam_account() no longer takes the 'override' argument that was being ignored so often (every other passdb backend). Extra checks have been added in some places. Minor code changes: smbpasswd no longer attempts to initialise the passdb at startup, this is now done on first use. pdbedit has lost some of its 'machine account' logic, as this behaviour is now controlled by the passdb subsystem directly. The samr subsystem no longer calls 'local password change', but does the pdb interactions directly. This allow the ACB_ flags specifed to be transferred direct to the backend, without interference. Doco: I've updated the doco to reflect some of the changes, and removed some paramters no longer applicable to HEAD.
* This is the 'winbind default domain' patch from Alexander BokovoyAndrew Bartlett2002-01-181-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | <a.bokovoy@sam-solutions.net>. The idea is the domain\username is rather harsh for unix systems - people don't expect to have to FTP, SSH and (in particular) e-mail with a username like that. This 'corrects' that - but is not without its own problems. As you can see from the changes to files like username.c and wb_client.c (smbd's winbind client code) a lot of assumptions are made in a lot of places about lp_winbind_seperator determining a users's status as a domain or local user. The main change I will shortly be making is to investigate and kill off winbind_initgroups() - as far as I know it was a workaround for an old bug in winbind itself (and a bug in RH 5.2) and should no longer be relevent. I am also going to move to using the 'winbind uid' and 'winbind gid' paramaters to determine a user/groups's 'local' status, rather than the presence of the seperator. As such, this functionality is recommended for servers providing unix services, but is currently less than optimal for windows clients. (TODO: remove all references to lp_winbind_seperator() and lp_winbind_use_default_domain() from smbd) Andrew Bartlett
* Separate out get_user_home_dir() from get_user_home_service_dir().Jeremy Allison2002-01-161-37/+29
| | | | Jeremy.
* Roll back PSTRING_SANCTIFY patch; just leave non-controversial typeMartin Pool2002-01-161-1/+1
| | | | and constness changes.
* Add constness to parametersMartin Pool2002-01-151-2/+2
|
* For hysterical raisins you must use string_set() to set the value of aTim Potter2002-01-091-1/+1
| | | | | string in the loadparam Globals struct. Using pstrcpy was causing every NULL string was being set to the name of the winbindd log file. (-:
* Added get_called_name() function, which replaces global_myname in printingJeremy Allison2002-01-081-0/+10
| | | | | | code (one less global, hurrah !) - to allow NetBIOS aliasing to be used with point and print. Jeremy.
* Put a name on lp_talloc poolMartin Pool2002-01-031-1/+1
|
* sync up ldap defaults with 2.2Gerald Carter2002-01-021-2/+3
|
* Add a pile of doxygen style comments to various parts of Samba. Many of theseAndrew Bartlett2001-12-301-1/+1
| | | | | | | | | probably will never actually be genearted, but I like the style in any case. Also fix a segfault in 'net rpc' when the login failed and a small memory leak on failure in the auth_info.c code. Andrew Bartlett
* Removed global debugf. Replaced with lp_set_logfile(name).Jeremy Allison2001-12-201-0/+9
| | | | | Fixed winbindd to finally stop leaving log. file droppings :-). Jeremy.
* fixed sscanf() of gid_t valuesAndrew Tridgell2001-12-201-4/+4
|
* update the ldap support code. it compiles.Jean-François Micouleau2001-12-131-21/+37
| | | | | | | | Ignacio you can update your howto ;-) samsync: a small patch to try chaning challenges. J.F.
* added a "use spnego" optionAndrew Tridgell2001-12-071-0/+6
| | | | | you need to set "use spnego = no" for w2k to be able to join a samba domain. Otherwise the w2k box will assume we can do kerberos as a KDC
* again an intrusive patch:Jean-François Micouleau2001-12-061-15/+9
| | | | | | | | | | | | | | | - removed the ugly as hell sam_logon_in_ssb variable, I changed a bit the definition of standard_sub_basic() to cope with that. - removed the smb.conf: 'domain admin group' and 'domain guest group' parameters ! We're not playing anymore with the user's group RIDs ! - in get_domain_user_groups(), if the user's gid is a group, put it first in the group RID list. I just have to write an HOWTO now ;-) J.F.
* removed the #ifdef USING_GROUPNAME_MAP/#endif blocksJean-François Micouleau2001-12-011-10/+0
| | | | | | | | that GROUPNAME_MAP has never been used. I'll delete the smbd/groupname.c file too J.F.
* A number of things to clean up the auth subsytem a bit...Andrew Bartlett2001-11-261-1/+27
| | | | | | | | | | | | | | | | | | | | | | | We now default encrypt passwords = yes We now check plaintext passwords (however aquired) with the 'sam' backend rather than unix, if encrypt passwords = yes. (this kills off the 'local' backed. The sam backend may be renamed in its place) The new 'samstrict' wrapper backend checks that the user's domain is one of our netbios aliases - this ensures that we don't get fallback crazies with security = domain. Similarly, the code in the 'ntdomain' and 'smbserver' backends now checks that the user was not local before contacting the DC. The default ordering has changed, we now check the local stuff first - but becouse of the changes above, we will really only ever contact one auth source. Andrew Bartlett
* updated server_role for ADSAndrew Tridgell2001-11-261-0/+1
|
* Another merge from appliance-head: in [ug]id_to_sid don't call theTim Potter2001-11-261-10/+60
| | | | | winbind function if the id is obviously going to be local. Cleanup of winbind [ug]id parameter handling.
* added 'security=ADS'Andrew Tridgell2001-11-251-0/+1
|
* added "net join" commandAndrew Tridgell2001-11-241-0/+3
| | | | this completes the first stage of the smbd ADS support
* This is another rather major change to the samba authenticaionAndrew Bartlett2001-11-241-9/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | subystem. The particular aim is to modularized the interface - so that we can have arbitrary password back-ends. This code adds one such back-end, a 'winbind' module to authenticate against the winbind_auth_crap functionality. While fully-functional this code is mainly useful as a demonstration, because we don't get back the info3 as we would for direct ntdomain authentication. This commit introduced the new 'auth methods' parameter, in the spirit of the 'auth order' discussed on the lists. It is renamed because not all the methods may be consulted, even if previous methods fail - they may not have a suitable challenge for example. Also, we have a 'local' authentication method, for old-style 'unix if plaintext, sam if encrypted' authentication and a 'guest' module to handle guest logins in a single place. While this current design is not ideal, I feel that it does provide a better infrastructure than the current design, and can be built upon. The following parameters have changed: - use rhosts = This has been replaced by the 'rhosts' authentication method, and can be specified like 'auth methods = guest rhosts' - hosts equiv = This needs both this parameter and an 'auth methods' entry to be effective. (auth methods = guest hostsequiv ....) - plaintext to smbpasswd = This is replaced by specifying 'sam' rather than 'local' in the auth methods. The security = parameter is unchanged, and now provides defaults for the 'auth methods' parameter. The available auth methods are: guest rhosts hostsequiv sam (passdb direct hash access) unix (PAM, crypt() etc) local (the combination of the above, based on encryption) smbserver (old security=server) ntdomain (old security=domain) winbind (use winbind to cache DC connections) Assistance in testing, or the production of new and interesting authentication modules is always appreciated. Andrew Bartlett
* Move all other paths into dynconfigMartin Pool2001-11-191-3/+3
|
* LIBDIR and LOCKDIR are dynamically configured too.Martin Pool2001-11-191-1/+1
|
* This change updates lp_guestaccount() to be a *global* paramater, rather thanAndrew Bartlett2001-11-091-5/+5
| | | | | | | | | | | | | | | | per-share. I beleive that almost all the things that this could have done on a per-share basis can be done with other tools, like 'force user'. Almost all the user's of this paramater used it as a global anyway... While this is one step at a time, I hope it will allow me to considerably simplfy the make_connection() code, particularly for the user-level security case. This already removes an absolute truckload of extra attempted password lookups on the guest account. Andrew Bartlett
* old merge from 2.2Gerald Carter2001-11-051-8/+27
|
* Small 'const' updates ahead of some AuthRewrite merging.Andrew Bartlett2001-10-311-7/+7
|
* added basic NTLMSSP support in smbd. This is still quite rough, andAndrew Tridgell2001-10-171-5/+3
| | | | | | loses things like username mapping. I wanted to get this in then discuss it a bit to see how we want to split up the existing session setup code
* fixed typoAndrew Tridgell2001-10-141-1/+1
|
* the next step in the intl changeover. This should get us compiling agian,Andrew Tridgell2001-10-141-342/+341
| | | | | | | and also completes the switch to lang_tdb.c. SWAT should now work with a po file in the lib/ directory also removed useless SYSLOG defines in many files
* Made nt acl support a local parameter for w2ksp2 profile fix.Jeremy Allison2001-10-121-4/+4
| | | | Jeremy.
* merge from 2.2Gerald Carter2001-10-111-8/+8
|
* OpenSSL merge from 2.2Gerald Carter2001-09-261-0/+12
|
* Fixup passdb stuff to add new nisplus and ldap backends.Jeremy Allison2001-09-251-0/+9
| | | | Jeremy.
* Added SWAT i18n feature:Motonobu Takahashi2001-09-241-338/+339
| | | | | | | | | | | | | | | | | | | | | | | | | | | | TO enable configure with --with-i18n-swat to support this gettext is integrated and a new directories name "po" and "intl" are created. now these languages are supported: en - English (default) ja - Japanese po - Polish tr - Turkish To add your language, to create ${your_language}.po by translating source/po/en.po into your language is needed. some of html and image files of various language version are not included yet, though message catalogue files are installed. you need to copy files manually under ${swatdir}/lang/$ln/{help,images,included,using_samba} And also added a option to intall manual pages: of various lang version To enable configure with --with-manlangs but manual pages themself are not included yet.
* Fix up NT_STATUS return for session setups, Win2k objects to anything otherAndrew Bartlett2001-09-231-3/+0
| | | | | | | | | | | than NT_STATUS_LOGON_FAILURE. This also brings us (almost) back in line with their implementation. Kill off SMBENCRYPT() macro Kill off 'nt smb support' paramater - tridge okayed this one. Andrew Bartlett
* *llist being NULL is not an errorAndrew Tridgell2001-09-191-1/+1
|
* move to SAFE_FREE()Simo Sorce2001-09-171-22/+16
|
* Kill off the dangerous passwd program default, as its both veryAndrew Bartlett2001-09-161-1/+1
| | | | | | | system-dependent and can allow (when unix password sync = yes) the 'syncronisation' of root's password by a normal user :-( Andrew Bartlett
* added a new global option "hostname lookups = yes/no"Andrew Tridgell2001-09-131-0/+7
| | | | | | | | This should finally kill off the remaining places where we attempt reverse lookups of the IP of the client. It may be that some pam modules called via the session code will need "hostname lookups = yes" but I've left it off by default as most sites don't need it and so many sites have broken reverse maps
* added "display charset" option in smb.conf, along with d_printf()Andrew Tridgell2001-09-071-1/+6
| | | | | | | | | which should now be used instead of DEBUG(0) or printf() for interactive messages I have only converted client.c to use d_printf(), and the code hasn't had much testing yet. Eventually we want all interactive code to use d_printf(), plus SWAT
* Fixed O(N^2) talloc loop when allocating printer name memory - fix fromJeremy Allison2001-09-061-2/+2
| | | | | Richard Bollinger <rabollinger@home.com>. Jeremy.
* enable strict locking by default. This will be slow, so now we justAndrew Tridgell2001-09-061-1/+1
| | | | need to fiind a way to make it fast
* lp_wins_server() is now lp_wins_server_list().Christopher R. Hertel2001-08-291-1/+1
| | | | | | | | | | | | | | This should make it clear that the meaning of the parameter value has changed. It no longer represents *the* WINS server, but a list of WINS servers. I have made other changes in the code such that the lp_wins_server() function is no longer necessary. Whenever smb.conf is reloaded the list managed by lib/wins_srv.c is refreshed. The wins_srv_count() function returns the number of entries in the list so, if the list is empty, it will return 0 (which can be interpreted as "false" in an if() statement). Chris -)-----
* Change default 'name resolve order' to WINS before DNS.Volker Lendecke2001-08-261-1/+1
| | | | Volker
* let admins also abort a shutdownSimo Sorce2001-08-241-0/+3
|
* so let admins shutdown their samba servers remotely if they want :-)Simo Sorce2001-08-231-0/+4
|
* Fixed detection of CUPS. We need to check for the presence of the cupsTim Potter2001-08-231-2/+2
| | | | header files as well as libcups.
* A few changes:Andrew Bartlett2001-08-221-10/+0
| | | | | | | | | | | | drop paramaters: status utmp hostname change session code to always record each vuid current on the server. The sessionid struct is no longer packed, as I couldn't get that to work ;-) change smbstatus to show this info and less of the connections.tdb info (its not actualy that accurate). I'll get swat doing some of this shortly.
* Remove unneeded lp_talloc_free().Jeremy Allison2001-08-221-3/+0
| | | | Jeremy.