1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-25 06:04:04 +03:00

274 Commits

Author SHA1 Message Date
Andrew Tridgell
9ce5a03ccb merge from 2.2
(This used to be commit f52a5014ee325f9d91f266f88eac51b6136a75b9)
2001-04-18 16:41:04 +00:00
Jeremy Allison
2ef68c7e92 Merge of Andrew's changes in 2.2.
Jeremy.
(This used to be commit fc76681812b1469208ad6c8847afdfc68bc6db49)
2001-04-13 19:12:06 +00:00
Tim Potter
3e24c65101 Added a caching system to smbsh. Previously access to workgroup or server
directories under /smb generated net share enum or net server enum calls.
For large networks this could result in bad performance.  We now cache these
results and only call net * enums after the cache timeout has exceeded.
(This used to be commit 1e38eef54d729aeb7fe905b344cf1480c686a348)
2001-04-12 05:53:07 +00:00
Jeremy Allison
ef1a7311ce Added JohnT and Andrew Bartlett's PAM changes.
Jeremy.
(This used to be commit ecd00e258c6fe4e8d90f48da74874e090dce4a40)
2001-04-10 18:10:38 +00:00
Jean-François Micouleau
0053bd8b80 first pass of the new group mapping code
J.F.
(This used to be commit 7154deb026d53cb0cd503562174c3332a372be63)
2001-03-23 00:50:31 +00:00
Andrew Tridgell
9c4927d362 much better readline support from Simo Sorce, with some mods from me
to make it a bit simpler
(This used to be commit e1487eb2c4626dbe0cc3b17606eda702cedef28b)
2001-03-18 13:24:57 +00:00
Jeremy Allison
65d35749b7 Added Michael Sweet's CUPS patch to call directly into the CUPS backend.
Parameterises the printing functions so other backends can be plugged
directly in (this is a good thing :-).
Jeremy.
(This used to be commit c0345bbaed5d1aac777f1a33ff84ad1899f2ed6d)
2001-03-16 05:55:30 +00:00
Jeremy Allison
24993180ab Dead code removal. Not used anywhere.
Jeremy.
(This used to be commit 90f334be23c20aa2a8a947e58907bd7854148574)
2001-03-11 22:02:48 +00:00
Jeremy Allison
ce069f4132 Ok - everything now compiles in HEAD (at least the default stuff). We
should now be ready for the trivial winbindd port..... (Tim ? :-).
Jeremy.
(This used to be commit 85021b16388e8efc15ac57bf1a7c01bba552bf41)
2001-03-11 00:44:30 +00:00
Jeremy Allison
da3053048c Merge of new 2.2 code into HEAD (Gerald I hate you :-) :-). Allows new SAMR
RPC code to merge with new passdb code.
Currently rpcclient doesn't compile. I'm working on it...
Jeremy.
(This used to be commit 0be41d5158ea4e645e93e8cd30617c038416e549)
2001-03-11 00:32:10 +00:00
Andrew Tridgell
b08b70faf8 started support for unicode on the wire in smbd. Using a very similar
method to what was used in the client I now have session setup and
tconx working.

Currently this is enabled with SMBD_USE_UNICODE environment
variable. Once the code is complete this will become a smb.conf
option.
(This used to be commit 7684c1e67294266d018c6f0cab58f1a9d797174f)
2001-03-10 11:38:27 +00:00
Jeremy Allison
ef2de912f2 Separated dfs pipe into implementation and interface modules.
rpc_parse/parse_dfs.c: Had to add buffer overrun checking ! HOW DID THIS GET IN HERE !
rpc_parse/parse_prs.c: Ensure prs_alloc_mem does a memset of zero before returning.
Jeremy.
(This used to be commit c9a6a17025f4a6850cd2b9a9ddb48bdeec8b3ffe)
2001-02-27 02:09:50 +00:00
Jeremy Allison
de187df10c Split srvsvc pipe into interface and implementation modules.
Jeremy.
(This used to be commit e14c88ddf466f17a710724fb4fc273d37a244d77)
2001-02-26 22:05:41 +00:00
Jeremy Allison
95731132dc Split wks pipe into interface and implementation modules.
Jeremy.
(This used to be commit 6a16b3850fdc4d6750ef2046f1db934f1ef92f17)
2001-02-26 20:06:25 +00:00
Jeremy Allison
d757d61abf Separated lsa code into interface and implementation.
Jeremy.
(This used to be commit 1cc96e0340b9e3ac343d6a28211bf0cc5bc6573b)
2001-02-26 19:45:00 +00:00
Jeremy Allison
1c8eb37534 Separated reg code into interface & implementation.
libsmb/namequery.c: Removed ununsed variables.
Jeremy.
(This used to be commit b857113f400551c57ac400a9cdc3c752085d107d)
2001-02-25 02:14:49 +00:00
Andrew Tridgell
3c270604c1 but it is needed for linking ...
(This used to be commit e7108a18b2ba5754d402d72492cbcfded2713472)
2001-02-21 06:03:16 +00:00
Andrew Tridgell
63e6ffbe0d rpc_parse_samr.c doesn't exist in head ...
(This used to be commit ea81a3ec88501194b7853a7c71a622b3fc0cf6f1)
2001-02-21 05:58:00 +00:00
Andrew Tridgell
a8ab984078 the unicode conversion of our client code is complete enough to be
enabled by default

you can disable it by setting the environment variable CLI_FORCE_ASCII
(This used to be commit 4d59c08c5e6f54c0d6ced7650750cb987e77b6c9)
2001-02-21 03:40:20 +00:00
Andrew Tridgell
6492d6b2f6 initial client side unicode support (needed for netapp filer)
I've currently got this code disabled by default as it is
incomplete. You enable it by setting a USE_UNICODE environment
variable. Once the support is complete this check will be removed and
the CAP_UNICODE capability bit will be the sole determination of
whether the client library code uses unicode

right now I have converted session_setup and tconx. I will do more fns
over the next few days.

see clistr.c for the new client side string interface. Luckily it
tends to make the code smaller and neater while adding unicode
support.
(This used to be commit e1a04e621f1c28d8e6e543d43741ca0272e2237f)
2001-02-20 08:09:06 +00:00
Richard Sharpe
a44daf2961 Add Makefile.in target for installing smbclientlib ...
(This used to be commit 2b9c6d1c9e278caccd202c1d3b07690c0423acc1)
2001-02-07 19:41:19 +00:00
Tim Potter
5d67bb9baf Added Baltic codepage support. From Toomas Soome <tsoome@ut.ee>
(This used to be commit d0c5339486c38b988d39fbf83bfb98c1258dd98d)
2001-02-02 17:31:33 +00:00
Tim Potter
2537e23620 Fix for KOI8-R codepage from Andrey Kiselev <dron@at1895.spb.edu>
(This used to be commit 7a08c3a699142fa8079c2736ed70aef0528ad578)
2001-01-31 17:09:13 +00:00
Tim Potter
be09d25902 Patch to get smbcacls and rpcclient to compile together.
(This used to be commit 5a9870f22d4995ec1fc242169ffc1e85da04a3c4)
2001-01-23 17:32:47 +00:00
Tim Potter
4673a99187 Some ugly mucking around to get the new rpcclient compiling and linking
with the new samr code and have prototypes working and smbd linking.
(This used to be commit 6d61f11788b8868e3396559307157edd1f39a84f)
2001-01-15 23:53:33 +00:00
Tim Potter
cd7d339e17 Removed link errors between rpcclient and smbd.
(This used to be commit e5b078ee7c0a65e89d692b0abe78cf5fdf0cfeab)
2001-01-11 23:49:21 +00:00
Tim Potter
bd72966aaa New makefile and proto for rpcclient.
(This used to be commit fdf044c351e3ed22212a89c9f2559a44a53d0cdd)
2001-01-11 23:11:16 +00:00
Tim Potter
6b51372c2e Codepages and stuff for Turkish language support. Contributed by
Deniz Akkus <akkus@alum.mit.edu>
(This used to be commit 5650c143a706a0a65dfd55dea2248c6636a57912)
2001-01-07 23:00:49 +00:00
David O'Neill
23807f2b30 Changes from APPLIANCE_HEAD:
source/Makefile.in
        - changes to ctags and etags rules that somehow got lost along the way.

    source/include/proto.h
        - make proto

    source/smbd/sec_ctx.c
    source/smbd/password.c
        - merge debugs for debugging user groups and NT token stuff.

    source/lib/util_str.c
        - capitalise domain name returned from parse_domain_user()

    source/nsswitch/wb_client.c
        - fix broken conditional in debug statement.

    source/include/rpc_secdes.h
    source/include/rpc_spoolss.h
    source/printing/nt_printing.c
    source/lib/util_seaccess.c
        - fix printer permission bugs related to ACE masks for printers.
          This adds mapping of generic access rights to object specific
          rights for NT printers.  Still need to work out whether or not to
          ignore ACEs with certain flags set, though. See comments in
          util_seaccess.c:check_ace() for details.

    source/printing/nt_printing.c
    source/printing/printing.c
        - use PRINTER_ACCESS_ADMINISTER instead of JOB_ACCESS_ADMINISTER
          until we sort out printer/printjob permission stuff.
(This used to be commit 1dba9c5cd1e6389734c648f6903abcb7c8d5b2f0)
2001-01-04 19:27:08 +00:00
Richard Sharpe
b6cb83d0d1 Add a new file clidgram with routines that are used by the libsmbclient code.
These routines handle the sending of dgrams in ways that don't bind us to
the nmbd code, but we may merge the two routines at some stage.

Also fix Makefile.in so the new code is compiled ...

Let's see whether or not it compiles on other architectures ...

Seems OK under Linux.
(This used to be commit f7466ba67cb6f863ee495e6de884e9b7a2e49430)
2001-01-03 05:19:21 +00:00
Richard Sharpe
b87c484051 First pass at the libsmbclient code ...
This code handles the basic stuff and compiles and links under Linux, but
I do not know about any other operating systems. Now onto directory
listing routines, including those that list workgroups, servers, etc.

Nothing is built automatically yet, you have to make client/testsmbc to build
the library and test program. Also, no make install targets are defined for
libsmbclient.so as yet, either.

Would be good if people test on operating systems other than Linux.
(This used to be commit 51c0436a50e9f9274cee9de043bbefc93aff8011)
2000-12-26 05:57:10 +00:00
Jeremy Allison
5c67f8de46 Added proto definition for new RPC calls.
Added printing fix from appliance-head.
Jeremy.
(This used to be commit f4c7f9ddb906b67ee4397e7707309356085476d1)
2000-12-13 19:55:48 +00:00
Tim Potter
55b162d221 I think it's time to go home.
(This used to be commit fde66badf143cde40af35e86d55acb48dc754cdd)
2000-12-13 13:10:22 +00:00
Tim Potter
06ba5ec75d OK so I shouldn't have added cli_pipe.o to LIBSMB_OBJ.
(This used to be commit a724850eb83e61450f112c0b2e6e3492c2a72863)
2000-12-13 13:04:49 +00:00
Tim Potter
d18fb4a2c9 Add libsmb/cli_lsarpc.o and rpc_client/cli_pipe.o to LIBSMB_OBJ. Not so
sure about the latter...

Modified SMBCACLS_OBJ
(This used to be commit c130d5b0f6a23b4fe19accad8a49ac58a1a8b0b1)
2000-12-13 12:54:57 +00:00
Tim Potter
3478427f2e Port of lsa_lookup_sids() and lsa_lookup_names() rpc client functions from
TNG branch.

Re-instated lsa_lookup_sids and lsa_lookup_names functions in rpcclient.

This requires most samba binaries to link in another handful of object
files due to uncessary coupling between modules.  )-:
(This used to be commit 817819d0cc3ecf642be5a1656be3b71bed260ee4)
2000-12-08 03:34:00 +00:00
Jeremy Allison
70922b9bbe Cause smbd to use the new posix_acls code, not the old unix_acls code.
Currently does exactly the same thing (returns ACLs the same way). This
code is written to try and get a POSIX ACL via the abstract sys_XX interface,
then fall back to providing a UNIX based ACL if the calls fail. Seems to
work. Next step is to add a --with-posix-acls to configure.in and then
check on a POSIX ACL system that a complex ACL is returned correctly
as an NT ACL. Note that the ACL set (a more complex problem) is not
addressed yet.
Jeremy.
(This used to be commit 4339e20202a876dbadc07980b731f711463b7299)
2000-12-06 23:24:31 +00:00
Gerald Carter
e899f04a68 update for new pdbedit tool (code from Simo)
--jerry
(This used to be commit 3d0ecea18d52b7287beede5687c26536413440eb)
2000-12-06 18:24:10 +00:00
Jeremy Allison
7e4c4721b4 Changed to sourceforge tdb code. This includes spinlocks (so we now have
a --with-spinlocks option to configure, this does mean the on-disk tdb
format has changed, so 2.2alphaX sites will need to re-create their
tdb's. The upside is no more tdb fragmentation and a +5% on netbench.
Swings and roundabouts....
Jeremy.
(This used to be commit 9dea7b7c257db487f8ced7dad3fce92fba03ea91)
2000-12-06 00:05:15 +00:00
Andrew Tridgell
bf0f2ea6b6 make sure we don't duplicate object files
(This used to be commit 976b9f6264c1a5af996777ff1d71db0f762cfa9b)
2000-12-03 05:23:46 +00:00
Andrew Tridgell
996bcb55a8 split the RPC_PARSE object into two pieces. The first is included as
part of LIBSMB and the latter is used by parts of samba that know
about the pwd backends
(This used to be commit 3420b52da5957b5bbf0704d1e386349a061f86cf)
2000-12-03 02:15:58 +00:00
Gerald Carter
0dcbafe2b9 Another large patch for the passdb rewrite.
o added BOOL own_memory flag in SAM_ACCOUNT so we could
    use static memory for string pointer assignment or
    allocate a new string

  o added a reference TDB passdb backend.  This is only a reference
    and should not be used in production because
	- RID's are generated using the same algorithm as with smbpasswd
 	- a TDB can only have one key (w/o getting into problems) and we
	  need three.  Therefore the pdb_sam-getpwuid() and
	  pdb_getsampwrid() functions are interative searches :-(

    we need transaction support, multiple indexes, and a nice open
    source DBM.  The Berkeley DB (from sleepycat.com seems to fit
    this criteria now)

  o added a new parameter "private dir" as many places in the code were
    using lp_smb_passwd_file() and chopping off the filename part.
    This makes more sense to me and I will docuement it in the man pages

  o Ran through Insure-lite and corrected memory leaks.  Need for
    a public flogging this time Jeremy (-:



-- jerry
(This used to be commit 4792029a2991bd84251d152a62b1033dec62cee2)
2000-11-21 05:55:16 +00:00
Jeremy Allison
cdac09614e Fix for a problem with the new messaging system. If a sender is using the
messaging system as a notification mechanism, and the speed of notification
greatly exceeds the speed of message recovery, then you get a massively (>75Mb)
growing tdb. If the message is a simple notification, then the message is
static, and you only need one of them in transit to a target process at
any one time.
This patch adds a BOOL "allow_duplicates" to the message_send_XX primitives.
If set to False, then before sending a message the sender checks the existing
message queue for a target pid for a duplicate of this message, and doesn't
add to it if one already exists.
Also added code into msgtest.c to test this.
Jeremy.
(This used to be commit 3aa7995660395ecb85c8e35b638fa9fbbb952558)
2000-11-16 21:38:24 +00:00
Gerald Carter
9fede0dc0d Large commit which restructures the local password storage API.
Currently the only backend which works is smbpasswd (tdb, LDAP, and NIS+)
are broken, but they were somewhat broken before. :)

The following functions implement the storage manipulation interface

/*The following definitions come from  passdb/pdb_smbpasswd.c  */

BOOL pdb_setsampwent (BOOL update);
void pdb_endsampwent (void);
SAM_ACCOUNT* pdb_getsampwent (void);
SAM_ACCOUNT* pdb_getsampwnam (char *username);
SAM_ACCOUNT* pdb_getsampwuid (uid_t uid);
SAM_ACCOUNT* pdb_getsampwrid (uint32 rid);
BOOL pdb_add_sam_account (SAM_ACCOUNT *sampass);
BOOL pdb_update_sam_account (SAM_ACCOUNT *sampass, BOOL override);
BOOL pdb_delete_sam_account (char* username);

There is also a host of pdb_set..() and pdb_get..() functions for
manipulating SAM_ACCOUNT struct members.  Note that the struct
passdb_ops {} has gone away.  Also notice that struct smb_passwd
(formally in smb.h) has been moved to passdb/pdb_smbpasswd.c
and is not accessed outisde of static internal functions in this
file.  All local password searches should make use of the the SAM_ACCOUNT
struct and the previously mentioned functions.

I'll write some documentation for this later.  The next step is to fix
the TDB passdb backend, then work on spliting the backends out into
share libraries, and finally get the LDAP backend going.

What works and may not:

	o domain logons from Win9x 	works
	o domain logons from WinNT 4	works
	o user and group enumeration
		as implemented by Tim	works
	o file and print access		works
	o changing password from
		Win9x & NT		ummm...i'll fix this tonight :)

If I broke anything else, just yell and I'll fix it.  I think it
should be fairly quite.





-- jerry
(This used to be commit 0b92d0838ebdbe24f34f17e313ecbf61a0301389)
2000-11-13 23:03:34 +00:00
Gerald Carter
01e0d3879e TDB password backend support written by Simo Sorce <simo.sorce@polimi.it>
Marked as an experimental compile time option (defaults to off) for now.





jerry
(This used to be commit 0435af4417b876c2ea1dd4591ae7647784c28e30)
2000-10-26 03:31:41 +00:00
Jeremy Allison
a7f8d8b636 Fix to allow smbd to call winbindd if it is running for all group enumeration,
falling back to the UNIX calls on error. This should fix all problems with
smbd enumerating all users in all groups in all trusted domains via winbindd.
Jeremy.
(This used to be commit 54a1ae815b3ebcc7ab98bf0a2a39719ae3b2d5ea)
2000-10-13 01:16:35 +00:00
John Terpstra
96e27b10bf Fixes to allow wins.c to compile to allow building of libnss_wins.so.
(This used to be commit 3fb2e94c4430c570639c0e4d1caeed3a19bbd09b)
2000-10-09 21:44:00 +00:00
Jean-François Micouleau
233bc00020 printer notify code.
It only sends notifies to one client. The broadcasting notify code will
code soon.

	J.F.
(This used to be commit 4c63c9185887c64e57d901e82a4a16a83522c898)
2000-09-25 21:05:18 +00:00
Andrew Tridgell
7be9a4fd4c first cut at smbcontrol program. It currently allows syntax like:
smbcontrol nmbd debug 7
  smbcontrol smbd debug 9
  smbcontrol 3278 debug 1
  smbcontrol nmbd force-election
(This used to be commit 5f91c24636f5d82486f22c10bc55e060f9c518bf)
2000-09-13 07:07:17 +00:00
Andrew Tridgell
3689e4ffc1 the first cut of the internal messaging system.
The motivation for this system is to replace the UDP message for
oplocks, but this commit only does the "set debug level" message.
(This used to be commit 2a34ee95f3929cff131db6c5a2b4820194c05b2d)
2000-09-11 07:02:43 +00:00