1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00
Commit Graph

414 Commits

Author SHA1 Message Date
Andrew Tridgell
da74939852 wrote a little sample smbw program
build using "make bin/smbw_sample"

this is to show people how to use smbw
(This used to be commit 7d7ceaa921)
2000-07-06 03:52:47 +00:00
Tim Potter
e7b5aba7f1 Merge of wbinfo program from TNG.
(This used to be commit 659e4d88ff)
2000-07-05 11:24:26 +00:00
Gerald Carter
efc9413278 first pass at merging rpcclient from TNG to HEAD. You can get a
semi-connection and a rpcclient prompt, but no functionality there yet.
Will be a few more days on that.

I need to clean this up a little.  Will work on that some more.

--jerry
(This used to be commit 1b305cb342)
2000-07-03 04:29:17 +00:00
Tim Potter
5d7c2db6f8 Added smbd/sec_ctx.o to smbd objects.
(This used to be commit 11897939bc)
2000-06-23 05:55:41 +00:00
Gerald Carter
3396a1d978 just enough to get rpcclient to compile. Look for #if 0
blocks around a few unimplemented functions.  Also had to
add cli_reg.c to Makefile.in


--jerry
(This used to be commit 426c43fb51)
2000-06-23 00:09:21 +00:00
Tim Potter
a08b01de50 Added nsswitch/common.o to SMBD_OBJ1
(This used to be commit 6c743427df)
2000-06-14 10:25:19 +00:00
Andrew Tridgell
c8de9b8fe1 enable the Linux change notify code and change some notify debug code
(This used to be commit c6be511fcc)
2000-06-12 17:06:00 +00:00
Andrew Tridgell
b2d01bd2db totally rewrote the async signal, notification and oplock notification
handling in Samba. This was needed due to several limitations and
races in the previous code - as a side effect the new code is much
cleaner :)

in summary:

- changed sys_select() to avoid a signal/select race condition. It is a
  rare race but once we have signals doing notification and oplocks it
  is important.

- changed our main processing loop to take advantage of the new
  sys_select semantics

- split the notify code into implementaion dependent and general
  parts. Added the following structure that defines an implementation:

struct cnotify_fns {
	void * (*register_notify)(connection_struct *conn, char *path, uint32 flags);
	BOOL (*check_notify)(connection_struct *conn, uint16 vuid, char *path, uint32 flags, void *data, time_t t);
	void (*remove_notify)(void *data);
};


then I wrote two implementations, one using hash/poll (like our old
code) and the other using the new Linux kernel change notify. It
should be easy to add other change notify implementations by creating
a sructure of the above type.

- fixed a bug in change notify where we were returning the wrong error
  code.

- rewrote the core change notify code to be much simpler

- moved to real-time signals for leases and change notify

Amazingly, it all seems to work. I was very surprised!
(This used to be commit 44766c39e0)
2000-06-12 15:53:31 +00:00
Andrew Tridgell
6db12f7180 split all the change notify code out into a separate module
smbd/notify.c. All the data structures are now private to that
module.

this is in preparation for Linux kernel support for change notify
(coming soon to a CVS tree near you)
(This used to be commit 1bb0aad4f6)
2000-06-12 05:32:28 +00:00
Andrew Tridgell
26848a3478 a first pass at Linux kernel oplocks support
(This used to be commit 3253085d98)
2000-06-10 14:29:31 +00:00
Andrew Tridgell
a9a512192d continued the split of the kernel level oplocks code into a more
modular form. In this pass I added oplock_irix.c and added a "struct
kernel_oplocks" that describes a kernel oplock implementation.

I also removed the maintainence mode from the Makefile. It was causing
too much trouble. If someone really likes it they can keep a patch
around to enable it themselves.
(This used to be commit fbeb980434)
2000-06-10 13:35:20 +00:00
Luke Leighton
1bdbb4e601 added se_access_check.
(This used to be commit 6de329f6bf)
2000-06-08 08:41:28 +00:00
Andrew Tridgell
7df31cb494 added locktest2
this uses 16 open file descriptors on 2 servers, with each server
accessed both via POSIX call and SMB calls. The idea is to test
NFS/SMB locking interaction.

Unfortunately the NT NFS locking implementation is so badly broken
that we don't have anything to test against
(This used to be commit 581498fe6b)
2000-06-05 13:53:56 +00:00
Jeremy Allison
a811ade9aa Fixed interface between new ACLS and nttrans code.
Jeremy.
(This used to be commit 400263245b)
2000-05-31 17:51:28 +00:00
Andrew Tridgell
82db6b6d9f don't build cli_reg in rpc client library until we merge that from tng
(This used to be commit 0cc59cc2c6)
2000-05-28 23:06:43 +00:00
Luke Leighton
682cccd8af unistr_to_dos not unistr_to_ascii
(This used to be commit f46c4fe876)
2000-05-27 02:05:15 +00:00
Luke Leighton
54695647ef fixed nttrans.c
(This used to be commit 06cd46b0ec)
2000-05-27 01:56:26 +00:00
Shirish Kalele
74d677ec59 Added the NETDFS pipe to allow remote administration of the msdfs symlinks
on the samba server.
(This used to be commit 15e7d8f6c5)
2000-05-18 18:43:53 +00:00
Shirish Kalele
651946153e The new msdfs implementation that uses symlinks to point to other
servers. Very intuitive.

Removed the dfs map parsing code and tdb maintenance code (files
msdfs/parse_dfs_map.c & msdfs/msdfs_tdb.c), dfs map loading and unloading
calls (param/loadparm.c smbd/server.c).

Added code to display msdfs format symlinks as directories in a
transact2_findfirst/findnext. (smbd/trans2.c)

Modified msdfs/msdfs.c to use the msdfs symlinks to
create dfs referrals.

Changed msdfs/README to reflect new operability.
(This used to be commit 6803d2574f)
2000-05-16 01:13:16 +00:00
Andrew Tridgell
4f21301ea6 in head as well ...
renamed ntdom to winbind
I think that using winbind in /etc/nsswitch.conf is better than ntdom
(This used to be commit 80f85b5359)
2000-05-10 14:17:21 +00:00
Andrew Tridgell
ddc9b8b406 more merging
it is now at the stage that winbindd can compile in the head branch,
but not link
(This used to be commit d178c00aae)
2000-05-10 09:49:55 +00:00
Andrew Tridgell
fe7f54bc99 don't attempt to build rpcclient in the head branch
(This used to be commit 1b6d01e115)
2000-05-09 13:21:58 +00:00
Andrew Tridgell
6bf1c3ac25 added some rules for winbindd and pam_winbind
(This used to be commit 6c5d139844)
2000-05-09 11:41:38 +00:00
Jeremy Allison
1684d534c8 Someone :-) forgot to add secrets.c to HEAD.
Jeremy.
(This used to be commit ac40971f30)
2000-05-08 18:14:25 +00:00
Andrew Tridgell
a7820eb9af need LOCKING_OBJ in locktest now
(This used to be commit 89e7199445)
2000-05-04 06:57:26 +00:00
Andrew Tridgell
1d3d724dd1 added a nasty lock testing program
it opens 2 connections to each of 2 servers, and opens 2 fnums on the
same file on each connection (a total of 8 file descriptors)

then it does random lock/unlock/reopen requests in a 100 byte range on
the file and compares the results from the 2 servers.

strangely enough, NT fails this test against itself right now - I'm
still trying to figure that out.
(This used to be commit 2f14d7c9bc)
2000-05-03 13:54:28 +00:00
Andrew Tridgell
814f37a5e3 we don't need fnmatch.c any more
(This used to be commit e23f43e7d3)
2000-04-30 11:15:27 +00:00
Andrew Tridgell
700f72453e - removed all our old wildcard matching code and replaced it with a
call to ms_fnmatch(). This also removes all the Win9X semantics stuff
and a bunch of other associated cruft.

- moved the stat cache code into statcache.c

- fixed the uint16 alignment requirements of ascii_to_unistr() and
  unistr_to_ascii()

- trans2 SMB_FIND_FILE_BOTH_DIRECTORY_INFO returns the short name as
  unicode always (at least thats what NT4 does)

- fixed some errors in the in-memory tdb code. Still ugly, but doesn't
  crash as much
(This used to be commit 03e9cea004)
2000-04-30 11:04:28 +00:00
Andrew Tridgell
71e7974f3f YIPEE!!!!!
We finally have a perfect emulation of Microsoft wildcard
matching. The routine ms_fnmatch() does wildcard matching with all MS
wildcards (including the unicode wildcards), and masktest against a
NT4 workstation with hundreds of thousands of random exmaples has not
found a single error.

amazingly it is only about 60 lines of code, but it has taken us years
to get it right. I didn't sleep much last night :)
(This used to be commit cc9e007cdf)
2000-04-30 04:45:16 +00:00
Andrew Tridgell
c0e1c65053 put tdb utility functions in a separate file
(This used to be commit 77009422a0)
2000-04-29 04:05:38 +00:00
Jeremy Allison
9a5eb068ab Ok - this is the *third* implementation of this (third time's the charm :-).
This implementation keeps all POSIX lock records in a separate in memory
tdb database only known about in locking/posix.c. In addition, the pending
close fd's are also held in a tdb which has an array of fd's indexed by
device and inode.

The walk-split code uglyness has been moved to posix.c from brlock.c,
which is the only place that needs to know about it, and the extra
functions hacked into brlock to expose internal state have been removed.

This implementation passes smbtorture locktest4, the only thing I need
to check now for completeness is what to do about lock upgrade/downgrades
which Win32 allows under some *very* strange circumstances.

Jeremy.
(This used to be commit 3f655de1c7)
2000-04-28 20:54:23 +00:00
Andrew Tridgell
858e63cab3 split clientgen.c into several parts
the next step is splitting out the auth code, to make adding lukes
NTLMSSP support easier
(This used to be commit 10c5470835)
2000-04-25 14:04:06 +00:00
Andrew Tridgell
a32420e5b7 Makefile.in change for split of printfsp.c
(This used to be commit 980a81651a)
2000-04-23 07:56:11 +00:00
Andrew Tridgell
f074d6ef57 split fsusage() into a separate module (to fix linking problems with
spoolssd in tng)
(This used to be commit e2eacdd74c)
2000-04-19 08:23:13 +00:00
Andrew Tridgell
bb28f06eae moved standard_sub() and friends into a separate module
(This used to be commit 030ec8e71f)
2000-04-17 04:46:10 +00:00
Andrew Tridgell
4a12fb79c0 The following series of commits are for the new tdb based printing
backend. This completely replaces our old printing backend.

Major changes include:

- all print ops are now done in printing/*.c rather than scattered all
  over the place
- system job ids are decoupled from SMB job ids
- the lpq parsers don't need to be nearly so smart, they only need to
  parse the filename, the status and system job id
- we can store lots more info about a job, including the full job name
- the queue cache control is much better

I also added a new utility routine file_lines_load() that loads a text
file and parses it into lines. This is used in out lpq parsing and I
also want to use it to replace all of our fgets() based code in other
places.
(This used to be commit 0b68660159)
2000-04-16 06:17:59 +00:00
Andrew Tridgell
df72a6aedc removed the read prediction code from the head branch. I think the
idea is fundamentally flawed anyway and it has been disabled for a
long time.
(This used to be commit 08de67ced4)
2000-04-10 12:54:18 +00:00
Andrew Tridgell
001765501e split out the lpq parsing code into a separate file
printing/lpq_parse.c

getting ready for the new printing backend
(This used to be commit 0ec1072e01)
2000-04-10 03:09:42 +00:00
Andrew Tridgell
d97c3e4591 don't echo warning messages twice
(This used to be commit 64a3fd2bc5)
2000-04-10 02:57:54 +00:00
Andrew Tridgell
3daa0cf86f I finally got sick of configure being run automaticaly when I run make
clean or in other situations. That then screws up options I pass to
configure and is generally annoying.

Instead the Makefile now emits a warning if configure needs
rerunning, but doesn't actually run it.

don't re-enable the auto running of configure on pain of death :)
(This used to be commit ea769a280f)
2000-03-30 00:34:15 +00:00
Tim Potter
191566780e Adding libtool support to HEAD branch. We're going to need this for
various things yet to be merged from TNG.  The smbwrapper stuff should
probably be ported across too.
(This used to be commit b183c24220)
2000-03-13 23:20:01 +00:00
Jeremy Allison
6bb92a6d38 Big update moving the multi-pdu support from 2.0.x into HEAD for JF
and the printer functions.
Also tidied up some header includes and got the order right so you
can now do a :

make proto
make clean
make

Jeremy.
(This used to be commit 833cd9fba9)
2000-03-09 21:45:16 +00:00
Shirish Kalele
952799d9af dded Microsoft Dfs services.
* added a new msdfs/ directory under source/
* added msdfs sources under this directory.
* modified configure setup to add a --with-msdfs configure time option

 Modified Files:
 	Makefile.in acconfig.h configure configure.in
 	include/config.h.in include/includes.h include/proto.h
 	include/smb.h include/smb_macros.h param/loadparm.c
 	smbd/negprot.c smbd/nttrans.c smbd/process.c smbd/reply.c
 	smbd/server.c smbd/trans2.c
 Added Files:
 	include/msdfs.h msdfs/README msdfs/msdfs.c msdfs/msdfs_tdb.c
 	msdfs/parse_dfs_map.c
 ----------------------------------------------------------------------
(This used to be commit 4684b4a188)
2000-03-08 22:14:30 +00:00
Jeremy Allison
27921069a7 Added new codepage from Ded Marazm <DedMarazm@mail.lv> - MSDOS baltic rim.
Jeremy.
(This used to be commit b8b98d5058)
2000-03-01 20:41:26 +00:00
Andrew Tridgell
89c3cf8ab6 damn, masktest now needs the mangle code from smbd
not very clean
(This used to be commit 6c09c0fd9e)
2000-02-10 13:45:52 +00:00
Jean-François Micouleau
cedf91b1f6 make proto ...
and the Makefile.in file

	J.F.
(This used to be commit aa22586aac)
2000-02-07 16:28:41 +00:00
Tim Potter
f3772fe91d Added smbd/vfs.o and smbd/vfs-wrap.o to smbd objects.
(This used to be commit d91bfec537)
2000-02-03 05:05:29 +00:00
Jeremy Allison
ace4006c9f Added hash-based stat cache code from Ying Chen.
Jeremy.
(This used to be commit b62a1bd632)
2000-01-26 21:25:35 +00:00
Andrew Tridgell
43f1d804af we need -lc when making shared objects or glibc doesn't do its magic
binding for stat()
(This used to be commit b52e60d568)
2000-01-24 03:39:24 +00:00
Andrew Tridgell
08685f6a62 added locking/brlock.c, a byte range locking system
(This used to be commit 67b7b2a5a6)
2000-01-13 12:04:31 +00:00
Jeremy Allison
fab3e0eb08 smbd/mangle.c
smbd/negprot.c: Tidyup of static initializers.
smbd/server.c: Fix -l option.
Jeremy.
(This used to be commit d120f22fef)
2000-01-08 02:16:15 +00:00
Andrew Tridgell
5e9f559187 implemented talloc() as described on samba-technical. This fixes the
lp_string() bug properly.

we still need to add lp_talloc_free() calls in all the main event
loops, I've only put it in smbd and nmbd thus far.
(This used to be commit aa7f815525)
2000-01-05 06:36:36 +00:00
Luke Leighton
fbd17c8daf simple mods to add msrpc pipe redirection. default behaviour: fall back
to using internal msrpc code in smbd.
(This used to be commit 8976e26d46)
2000-01-03 19:19:48 +00:00
Andrew Tridgell
574788039f added the unexpected packet database (unexpected.tdb)
this means "nmblookup -S" now always works, even with broken servers
the database stores all unexpected replies and these can be accessed
by any client.
while doing this I cleaned up a couple of functions, and put in place
a better trn_id generator. in most places the code got quite a bit
simpler due to the addition of simple helper functions.

I haven't yet put the code in to take advantage of this for pdc
replies - that will be next. Jeremys pdc finding code will then work :)
(This used to be commit 280e6359d3)
2000-01-03 03:17:16 +00:00
Andrew Tridgell
4e1291a83f converted all our existing shared memory code to use a tdb database
instead of either sysv or mmap shared memory or lock files.

this means we can now completely remove
	locking_shm.c
	locking_slow.c
	shmem.c
	shmem_sysv.c
and lots of other things also got simpler

locking.c got a bit larger, but is much better compartmentalised now
(This used to be commit e48c2d9937)
1999-12-21 09:25:59 +00:00
Andrew Tridgell
c2c42b8694 first pass at the database code for Samba. This also includes a test
suite and a very simple tool for manuipulating the databases.

the main code is in tdb/tdb.c and includes both mmap and file based
IO. All databases auto-expand and allow multiple simultaneous writers.

the next step is using this new capability in lots of places in Samba
where we have existing ad-hoc databases
(This used to be commit c89d29cc5e)
1999-12-21 03:04:37 +00:00
Andrew Tridgell
3db52feb1f first pass at updating head branch to be to be the same as the SAMBA_2_0 branch
(This used to be commit 453a822a76)
1999-12-13 13:27:58 +00:00
Luke Leighton
4f8a24522c final part of "first" phase converting over to msrpc daemon architecture.
done a minimal amout of clean-up in the Makefile, removing unnecessary
modules from the link stage.  this is not complete, yet, and will
involve some changes, for example to smbd, to remove dependencies on
the password database API that shouldn't be there.  for example,
smbd should not ever call getsmbpwXXX() it should call the Samr or Lsa
API.

this first implementation has minor problems with not reinstantiating
the same services as the caller.  the "homes" service is a good example.
(This used to be commit caa5052522)
1999-12-12 20:03:42 +00:00
Luke Leighton
4ab9d91428 ABOUT TIME!!!!!!!!
damn, this one is bad.

started, at least two days ago, to add an authentication mechanism to
the smbd<->msrpc redirector/relay, such that sufficient unix / nt
information could be transferred across the unix socket to do a
become_user() on the other side of the socket.

it is necessary that the msrpc daemon inherit the same unix and nt
credentials as the smbd process from which it was spawned, until
such time as the msrpc daemon receives an authentication request
of its own, whereupon the msrpc daemon is responsible for authenticating
the new credentials and doing yet another become_user() etc sequence.
(This used to be commit 30c7fdd6ef)
1999-12-08 21:43:03 +00:00
Luke Leighton
a0ba234cf9 the first independent msrpc daemon - lsarpcd.
one horrible cut / paste job from smbd, plus a code split of shared
components between the two.

the job is not _yet_ complete, as i need to be able to do a become_user()
call for security reasons.  i picked lsarpcd first because you don't
_need_ security on it (microsoft botched so badly on this one, it's not
real.  at least they fixed this in nt5 with restrictanonymous=0x2).
fixing this involves sending the current smb and unix credentials down
the unix pipe so that the daemon it eventually goes to can pick them
up at the other end.

i can't believe this all worked!!!
(This used to be commit 2245b0c6d1)
1999-12-06 00:44:32 +00:00
Luke Leighton
92bc7a4263 first version of msrpc agent redirector code. client-side only.
(This used to be commit 5e5a1dceee)
1999-12-05 01:34:34 +00:00
Luke Leighton
f6077db317 cool! created higher-order function table for agent redirection.
(This used to be commit 7bb2e55d0d)
1999-12-04 21:55:39 +00:00
Luke Leighton
f521205cb3 jeremy is going to hate me for this.
created an "nmb-agent" utility that, yes: it connects to the 137 socket
and accepts unix socket connections which it redirects onto port 137.

it uses the name_trn_id field to filter requests to the correct
location.

name_query() and name_status() are the first victims to use this
feature (by specifying a file descriptor of -1).
(This used to be commit d923bc8da2)
1999-12-04 19:14:37 +00:00
Luke Leighton
7d01f964ff cool! a unix socket smb redirector. code based on smbfilter and
ideas from ssh-agent.

the intent is to be able to share smb sessions using cli_net_use_add()
across multiple processes, where one process knows the target server
name, user name and domain, but not the smb password.
(This used to be commit 294b653f2e)
1999-12-03 18:16:08 +00:00
Luke Leighton
6ddfc68e04 sys_select added one more argument (read, write selectors).
(This used to be commit e4d92ff9df)
1999-12-01 02:15:14 +00:00
Luke Leighton
8d0660607f this is going to sound _really_ weird, ok, but i had to implement
equivalents of NetUseAdd and NetUseDel!
(This used to be commit 86f4b1d3cc)
1999-11-29 23:56:09 +00:00
Luke Leighton
f8b82a7b95 first stages of removing struct cli_state* and uint16 fnum from all
msrpc client code.  the intent is to hide / abstract / associate
connection info behind policy handles.

this makes the msrpc functions look more and more like their nt equivalents.

who-hou!
(This used to be commit c01b18e632)
1999-11-24 20:24:33 +00:00
Luke Leighton
2752e372b6 WARNING! MOVED rpc_server/srv_lsa_hnd.c TO lib/util_hnd.c
CVS UPDATE MAY ISSUE WARNING ABOUT lib/util_hnd.c MODIFICATION
DATE BEING IN THE FUTURE.  CVS CHECKOUT A NEW REPOSITORY MAY BE
SAFER.
(This used to be commit c26e8a6ac5)
1999-11-24 18:15:50 +00:00
Luke Leighton
7bd8fd1a10 adding svcctl 0x1b function
(This used to be commit d5869df371)
1999-11-23 18:57:07 +00:00
Luke Leighton
a56bea383b doing a code reshuffle. want to add code to establish trust relationships.
(This used to be commit 3ec269b402)
1999-11-20 19:43:37 +00:00
Luke Leighton
161c11e4bc - bug in nmbd registering DOMAIN_NAME<1c> to WINS server; recursion
desired flag MUST be set in any NBT UDP packets sent to a WINS
  server, else they will go to the WINS client side of the NT NetBIOS
  kernel instead, and will get trashed.

- added \PIPE\browser server-side code.
(This used to be commit 8e406c1fa2)
1999-11-19 01:01:07 +00:00
Luke Leighton
1c6c4e7e39 added \PIPE\browser plus experimental brsinfo command. you wouldn't
believe the XXXX that MIGHT be involved in getting nt5rc2 to join
a samba domain...
(This used to be commit 569babb393)
1999-11-19 00:12:16 +00:00
Luke Leighton
4c479f0574 split array-handling functions into separate module.
(This used to be commit cc2ce2b755)
1999-11-12 15:37:05 +00:00
Luke Leighton
bd6467154e spoolss openprinterex / closeprinter client-code.
experimental spoolopen <printer name> command added.

jean-francois, f.y.i. i changed the #define for SPOOLSS_OPENPRINTEREX from
op code 0x44 to 0x45.
(This used to be commit ef7fa58fd3)
1999-11-06 18:11:19 +00:00
Luke Leighton
32dedee7f0 experimental spoolss rpcclient commands
(This used to be commit c86edef90e)
1999-11-05 18:40:38 +00:00
Luke Leighton
6f9105c853 various. debug levels changed. nmbd doesn't need libsmb/clienttrust.c.
samr_lookup_rids() moved to a dynamic memory structure not a
static one limited to 32 RIDs.  cli_pipe.c reading wasn't checking
ERRmoredata when DOS error codes negotiated (this terminates
MSRPC code with prejudice).
(This used to be commit 8976eca2db)
1999-10-21 16:53:50 +00:00
Luke Leighton
6af79fb09d split modify_trust_account_password into a separate module.
(This used to be commit 479fc93bd0)
1999-10-21 15:38:59 +00:00
Luke Leighton
09e6f6eb9c adding CAP_EXTENDED_SECURITY support in a hurry last week. forgot to
deal with linking issues in other binaries
(This used to be commit 57f95a0198)
1999-10-14 18:49:24 +00:00
Luke Leighton
f1c2fdb270 split matthew's sync command (only currently called from smbpasswd)
into a separate module
(This used to be commit d99eca020a)
1999-09-21 21:28:27 +00:00
Luke Leighton
7a0595b234 use read() instead of fread() as fread() fails on redhat 6.
(This used to be commit b1025d499b)
1999-08-18 00:01:00 +00:00
Luke Leighton
0cf1de5fdd adding lib/util_status.c to Makefile.in
(This used to be commit f1fdf4c391)
1999-08-17 23:20:44 +00:00
Alexandre Oliva
848823bc9f Avoid multiple ``Updating dependencies'' messages before .deps/.stamp
is created
(This used to be commit 407eec6316)
1999-07-18 20:31:57 +00:00
Luke Leighton
8f1404739f Jean-Francois Micouleau's rewritten DFS patch, originally written by
Nigel Williams.  despite the data format being *exactly* the same as
NT's, this still doesn't work yet.  more work needed.
(This used to be commit 270981960b)
1999-07-12 18:46:15 +00:00
Jean-François Micouleau
9ac038817e Changed the RPC api definition now first arg is a pipe_struct
found some memory leak in the spoolss code.

	Jean Francois
(This used to be commit 958591abd1)
1999-05-03 22:00:33 +00:00
Luke Leighton
d6ba4580d7 md5 and hmac_md5
(This used to be commit 5777c1fb12)
1999-04-30 05:37:55 +00:00
Jean-François Micouleau
be552ca350 rpc_parse/parse_misc.c : defined a new BUFFER5 struct
include/ntdomain.h     : added rpc_spoolss.h include statement
include/proto.h
include/rpc_dce.h      : added definition of RPC_ALTER_CONTEXT request &
                         reply
param/loadparm.c       : 2 new options for NT printing support and some
                         changes to initial values in the LPRNG case.
rpc_parse/parse_prs.c  : added prs_uint16s()
rpc_parse/parse_rpc.c  : added SYNT_SPOOLSS_V1 and code for the
                         alter-context support.
rpc_server/srv_pipe.c  : alter-context support
smbd/nttrans.c
smbd/server.c
include/rpc_misc.h
Makefile.in
include/smb.h

Jean Francois
(This used to be commit 4c515804b7)
1999-04-27 10:43:32 +00:00
Matthew Chapman
7fe5ba774b Adding scheduler control pipe (\atsvc), client-side routines, and rpcclient
command "at" (compatible with NT's "at" command - see rpcclient commit) -
useful for remote NT administration.
(This used to be commit cf30a472f7)
1999-04-23 14:47:45 +00:00
Andrew Tridgell
388a408a73 fixed a typo
(This used to be commit 12d55d208a)
1999-04-17 14:09:15 +00:00
Andrew Tridgell
a32c926289 damn, new files need to be added to the head branch first, I've told
other people this before then forgot myself :)
(This used to be commit a116228d37)
1999-04-17 14:06:57 +00:00
Tim Potter
bbff2fad2f Added smbd/vfs.o and smbd/vfs-wrap.o to object list for smbd.
(This used to be commit db60aa209c)
1999-04-04 06:47:57 +00:00
Andrew Tridgell
d330c907bd Ken McDonell from SGI was interested in adding some profiling
capabilities to Samba so that Samba could talk to the SGI PCP
(Performance Co-Pilot) apps.

This change adds a profiling shared memory area and uses it to count
two fairly trivial things, the number of uid switches and the number
of SMB packets processes. To add more just edit include/profile.h and
then increment it at the right place.

I've also added a -P switch to smbstatus to dump the profile area.
(This used to be commit ef3d61a80a)
1999-04-01 05:22:58 +00:00
Luke Leighton
236cea4efa Benjamin Kuit's MYSQL SAM Database implementation.
Copyright (C) Benjamin Kuit <bj@mcs.uts.edu.au> 1999.
(This used to be commit fdf61e1dab)
1999-03-01 16:31:14 +00:00
Christopher R. Hertel
7bf6e4d6a0 Sorry that this is going so slowly.
I've added debug2html to Makefile.in so that it compiles as part of the
normal build.  Fixed a typo in debug2html.c as well.

One problem:  I found it necessary to link with both $(PARAM_OBJ) and
              $(LIB_OBJ).  The result is an executable that is much larger
              than it really needs to be.
(This used to be commit d2d6f0bf36)
1998-12-28 22:34:08 +00:00
Luke Leighton
a8e2698306 lib_sec_ctxt.o not .c
(This used to be commit 2485b8e706)
1998-12-20 00:31:18 +00:00
Christopher R. Hertel
dc003d8d40 A while back, Andrew and I talked about making the debug parsing code a
better "fit" with other Samba code.  This is a small first step toward
doing what (I think) we agreed to do.

I've moved the key function from ubiqx/debugparse.c into lib/debug.c.  I
have also moved the enum from ubiqx/debugparse.h into the debug section in
smb.h.

The next thing to do is to get debug2html added into the Makefile.in so
that it is always produced when compiling the suite.

Chris -)-----
(This used to be commit 782474f41e)
1998-12-16 18:50:54 +00:00
Andrew Tridgell
cfba976fc2 removed the SID stuff from the head branch as well.
This allows the removal of PASSDB_OBJ, RPC_CLIENT_OBJ and
RPC_PARSE_OBJ from nmbd in the head branch.

so nmbd just went on a diet :)
(This used to be commit be697c9ef0)
1998-12-09 06:35:37 +00:00
Luke Leighton
7135fb0a2c adding "Service Control Manager" commands to rpcclient.
(This used to be commit e5ee965f8d)
1998-12-08 23:29:37 +00:00
Luke Leighton
8308c000b2 adding srvsvc pipe.
(This used to be commit d06d636994)
1998-12-08 00:25:04 +00:00
Luke Leighton
699bae847f matthew chapman's ldap code, to date. plus docs!
(This used to be commit 2c438c86cb)
1998-12-07 21:37:17 +00:00
Luke Leighton
312f4f3960 - lib/unix_sec_ctxt.c
attempt at taking lib/uid.c and getting a unix security context
	change module that is independent of "cnums" and "snums".
	a security context is needed for pipes, not just IPC$ or other
	services.

- group database API

	added add_group/alias_member, del_group/alias_member,
	del_group/alias_entry functions.  del_builtin_entry() is
	deliberately set to NULL to cause an exception, you cannot
	delete builtin aliases.

- parse_lsa.c srv_lsa.c

	fixed lookup_names code, it was a load of trash and didn't do
	anything.

- cmd_samr.c rpcclient.c srv_samr.c

	added "deletegroup", "deletealias", "delaliasmem", "delgroupmem",
	"addgroupmem", "addaliasmem", "createalias", "creategroup", to
	both client and server code.

	server code calls into unix stubs right now, which don't actually
	do anything.  the only instance where they are expected to do
	anything is in appliance mode NOT even in the ldap code or anything.

	client code modified to call samr_lookup_names() for group code
	(because we can) and lsa_lookup_names() for alias code (because
	we have to).

- srv_lookup.c

	oops, lookup on unsplit name, we got lookup on DOMAIN, DOMAIN\name
	instead of DOMAIN, name.
(This used to be commit b8175702ef)
1998-12-07 17:23:48 +00:00
Luke Leighton
6c94b455a0 trailing backslashes spotted by andrej.
(This used to be commit 9266137fcb)
1998-12-02 16:21:25 +00:00
Luke Leighton
31044dd8e6 - adding builtin[alias]db.
- lib/sids.c:

	generate_sam_sid() modified to take a domain name: it now
	generates "DOMAIN_NAME.SID".  reasons:

	1) if you run multiple samba servers on the same machine
	under different netbios names as members of a domain,
	they won't all use the same SID, which is a _big_ mistake
	but it would happen _by default_.

	2) we have (had) a problem with sid_to_string() and string_to_sid()
	which cause SIDs to be incorrectly read.  one of the major
	reasons for *NOT* making this change was so as not to disrupt
	existing users.  but as they will be anyway by this bug,
	we might as well go ahead.

- passdb/smbpass.c:

	wanted to change the meaning of the name in the smbpasswd
	file to an "nt" name not a "unix" name.  this is probably
	not a good idea: reverted this.

- output formatting / bug-fixing in rpcclient query_useraliases code.
(This used to be commit e4930f5f48)
1998-11-30 15:08:58 +00:00
Luke Leighton
130e971942 cvs getting it wrong. again.
(This used to be commit 776abe3fe5)
1998-11-29 20:16:20 +00:00
Luke Leighton
b20fc00464 we have a problem: resolution of "Primary Group RID" which we assumed
would only be a domain group rid.  it can also be a local group rid,
which causes us problems in attempting to turn a unix gid into the
correct rid (domain group or local group).

sooo.... the fix is _in_ there, we just can't use it because it causes
link / knock-on problems in nmbd.
(This used to be commit e4ee653870)
1998-11-26 00:48:31 +00:00
Jeremy Allison
bfc38ff872 Makefile.in: Added maintainer mode fixes.
aclocal.m4: Added AC_LIBTESTFUNC.
configure.in: Fixed -lsecurity -lsec problems.
client.c: dos_ fixes.
groupdb/aliasunix.c: Dead code removal.
include/includes.h: Added default PRINTCAP_NAME.
lib/genrand.c: dos_ fixes.
lib/replace.c: Added strtoul.
lib/system.c: dos_ fixes.
lib/util.c: dos_ fixes.
lib/util_sid.c: Signed/unsigned fixes.
lib/util_str.c: removed bad const.
locking/locking_slow.c: dos_ fixes.
printing/printing.c: dos_ fixes.
rpc_server/srv_samr.c: Dead code removal.
rpc_server/srv_sid.c: global_myworkgroup defined with wrong size AGAIN !
smbd/dir.c: dos_ fixes.
smbd/open.c: dos_ fixes.
smbd/oplock.c: dos_ fixes.
smbd/reply.c smbd/server.c smbd/service.c smbd/uid.c: dos_ fixes.

Jeremy.
(This used to be commit 6acb4b68f6)
1998-11-25 21:17:20 +00:00
Luke Leighton
4cee58780c unix instance of group database API
(This used to be commit e76f593b35)
1998-11-23 21:51:05 +00:00
Andrew Tridgell
a0c6af03d6 use bindir not sbindir in Makefile to ensure that we don't break
existing setups
(This used to be commit e97cbd6912)
1998-11-21 00:56:52 +00:00
Jeremy Allison
d5015ef708 Makefile.in: Added passing of CPPFLAGS into Makefile.
configure
configure.in
include/config.h.in: Fixes for AIX4.x. AIX *will not*
                     enable large file support of *any* description unless
                     either -D_LARGE_FILES or -D_LARGE_FILES_API are defined.
                     I chose "-D_LARGE_FILES" as this leads to cleaner code...

Also fixed bug where getpwnam was listed as getpw(a)nam in configure.in.
Jeremy.
(This used to be commit 2d62dc26f4)
1998-11-19 23:42:57 +00:00
Jeremy Allison
17590be23d Sync up with 2.0 code.
Added HPUX autoconf changes.
Added "gross hack" printer code.
Jeremy.
(This used to be commit 1ef6d3bd63)
1998-11-19 22:37:33 +00:00
Jeremy Allison
157fe90d2e Changed Makefile.in to use autoconf prefixes.
NOTE: The packaging scripts will have to be changed !!!!

Jeremy.
(This used to be commit 79c259f05c)
1998-11-17 22:06:59 +00:00
Luke Leighton
74d539f557 - group database API. oops and oh dear, the threat has been carried out:
the pre-alpha "domain group" etc parameters have disappeared.

- interactive debug detection

- re-added mem_man (andrew's memory management, detects memory corruption)

- american spellings of "initialise" replaced with english spelling of
  "initialise".

- started on "lookup_name()" and "lookup_sid()" functions.  proper ones.

- moved lots of functions around.  created some modules of commonly used
  code.  e.g the password file locking code, which is used in groupfile.c
  and aliasfile.c and smbpass.c

- moved RID_TYPE_MASK up another bit.  this is really unfortunate, but
  there is no other "fast" way to identify users from groups from aliases.
  i do not believe that this code saves us anything (the multipliers)
  and puts us at a disadvantage (reduces the useable rid space).
  the designers of NT aren't silly: if they can get away with a user-
  interface-speed LsaLookupNames / LsaLookupSids, then so can we.  i
  spoke with isaac at the cifs conference, the only time for example that
  they do a security context check is on file create.  certainly not on
  individual file reads / writes, which would drastically hit their
  performance and ours, too.

- renamed myworkgroup to global_sam_name, amongst other things, when used
  in the rpc code.  there is also a global_member_name, as we are always
  responsible for a SAM database, the scope of which is limited by the role
  of the machine (e.g if a member of a workgroup, your SAM is for _local_
  logins only, and its name is the name of your server.  you even still
  have a SID.  see LsaQueryInfoPolicy, levels 3 and 5).

- updated functionality of groupname.c to be able to cope with names
  like DOMAIN\group and SERVER\alias.  used this code to be able to
  do aliases as well as groups.  this code may actually be better
  off being used in username mapping, too.

- created a connect to serverlist function in clientgen.c and used it
  in password.c

- initialisation in server.c depends on the role of the server.  well,
  it does now.

- rpctorture.  smbtorture.  EXERCISE EXTREME CAUTION.
(This used to be commit 0d21e1e609)
1998-11-17 16:19:04 +00:00
Jeremy Allison
3b4a9ff380 Makefile.in: Re-added quotes round ROFF call for DGUX.
script/installman.sh: Make installman ignore ROFF argument if it is "".
smbd/oplock.c: Move location of oplock test file to lockdir.
Jeremy.
(This used to be commit 6c25a33142)
1998-11-16 23:28:59 +00:00
Jeremy Allison
8fc1504ff8 Makefile.in configure configure.in include/config.h.in: Changes for DGUX and UNIXWARE.
groupdb/aliasdb.c groupdb/aliasfile.c groupdb/groupfile.c: Don't use snprinf, use slprintf.
include/includes.h: Fix YP problem.
include/smb.h: Fix ZERO_STRUCTP.
lib/util_sock.c: Added strerror() in debugs.
passdb/ldap.c: Don't use snprinf, use slprintf.
rpc_client/cli_lsarpc.c rpc_client/cli_pipe.c rpc_parse/parse_sec.c rpc_server/srv_pipe.c: Don't use snprinf, use slprintf.
script/installman.sh: DGUX changes.
smbd/open.c smbd/oplock.c: Fixed gcc warnings.
web/swat.c: Changes USER to SWAT_USER.
(This used to be commit 4c2b5a0098)
1998-11-13 21:41:01 +00:00
Luke Leighton
5b863af4c0 cleaning up conflicts between group code not yet committed and
changes from yesterday by me, jeremy and andrew.

jeremy, your ACB_PWNOTREQ mod would have caused a crash if the user
didn't exist (first check should be for smb_pass != NULL)
(This used to be commit cbac0f165d)
1998-11-12 16:07:00 +00:00
Andrew Tridgell
29e36b7134 extracted the password change code from smbpasswd and used it in swat
instead of opening pipes and other horrible stuff.
(This used to be commit 49bf197103)
1998-11-12 07:06:48 +00:00
Herb Lewis
4dd4f1798e Added needed flag for swat password changing
I forgot to mention that the changes to swat were contributed by
John Sygulla
(This used to be commit aa0cec0470)
1998-11-11 21:41:44 +00:00
Jeremy Allison
b94520e424 Makefile.in: Added target for makeyodldocs - not used by default.
rpc_client/cli_reg.c: The perils of cut-n-paste coding include using variables before
                      they are initialised :-).
script/makeyodldocs.sh: Remove the intermediate files.
Jeremy.
(This used to be commit 88031bca5c)
1998-11-11 01:33:57 +00:00
Luke Leighton
1e1c2ec93c rpcclient registry commands.
(This used to be commit 36fcb4a6e6)
1998-11-10 19:05:00 +00:00
Luke Leighton
313d8ef27d util functions split into relevant modules, first pass.
(This used to be commit d448906e68)
1998-11-10 18:14:16 +00:00
Jeremy Allison
5c3295c16d Default for SMB_PASSWD program was set to smbpasswd ! This explained the problems
John & Andrew were having with smbpasswd. This would cause the smbpasswd
to be changed *twice* - this the second decrypt would fail.
Changed it to be "/bin/passwd" and changed the name of the macro
to PASSWORD_PROGRAM to make it clear this is not an smb password
changer.
Jeremy.
(This used to be commit 8c16253654)
1998-11-10 00:37:14 +00:00
Jeremy Allison
e4f974c611 Makefile.in: Removed rpc_server/srv_ldap_helpers.c per J.F.'s instructions.
client/client.c:
client/clitar.c:
include/client.h:
smbwrapper/smbw_dir.c:
smbwrapper/smbw_stat.c:
smbwrapper/smbw.c:
lib/util.c: Converted all use of 'mode' to uint16.
smbd/quotas.c: Fixed stupid comment bug I put in there :-(.
printing/printing.c: Fix from J.F. to new code.
Jeremy.
(This used to be commit bacd3e9d20)
1998-11-09 20:33:37 +00:00
Andrew Tridgell
8c62b28e0e converted smbclient to use clientgen.c rather than clientutil.c
I did this when I saw yet another bug report complaining about
smbclient intermittently missing files. Rather than applying more
patches to smbclient it was better to move to the more robust
clientgen.c code.

The conversion wasn't perfect, I probably lost some features of
smbclient while doing it, but at least smbclient should be consistent
now. It if fails it should _always_ fail rather than giving people the
false impression of a reliable utility.

the tar stuff seems to work, but hasn't had much testing as I never
use it myself. I'm sure someone will find bugs in my conversion of
smbtar.c. It was quite tricky as it did a lot of its own SMB calls. It
now uses clientgen.c exclusively.

smbclient is still quite messy, but at least it doesn't build its own
SMB packets.

I haven't touched smbmount as I never use it. Mike, do you want to
convert smbmount to use clientgen.c?
(This used to be commit e14ca7765a)
1998-11-09 03:45:49 +00:00
Jeremy Allison
68d3842dc7 Added scripts/convert_smbpasswd to SCRIPTS
Jeremy.
(This used to be commit 60553b3dc2)
1998-11-05 02:58:37 +00:00
Jeremy Allison
01e04614c7 Makefile.in configure configure.in include/proto.h smbd/noquotas.c smbd/quotas.c:
Added quotas patch for autoconf from Dejan Ilic <svedja@lysator.liu.se>.
printing/printing.c: Filenames with spaces patch from Allan Bjorklund <allan@umich.edu>
utils/nmblookup.c: Fix usage() function.
smbd/reply.c: Split out the security=server and security=domain checks into
              check_server_security() and check_domain_security() to aid the
              writing of the 'hack' appliance mode invented by John Schimmel.
Jeremy.
(This used to be commit f09ab9b522)
1998-11-03 02:25:28 +00:00
Alexandre Oliva
e746555102 do not print garbage just because someone does not want dependencies :-)
(This used to be commit 7f3c96c5da)
1998-10-30 16:37:39 +00:00
Alexandre Oliva
610251a631 modify dependency tracking code so that it:
1) inserts the pathname of the object file in the dependency file
   (currently, gcc will only generate the basename)
2) the directory tree within .deps mirrors the source tree, so that we use
   shorter filenames
problem 1 was reported to me by Tom Angert <angert@bellsouth.net>
(This used to be commit 274a2cff30)
1998-10-29 17:55:58 +00:00
Christopher R. Hertel
377156cd75 This should have gone with the last batch.
Again, to compile debug2html, you need to do a 'make debug2html'.

Chris -)-----
(This used to be commit bd0c5ee8e7)
1998-10-28 20:35:27 +00:00
Christopher R. Hertel
e04759fbab Fixed a small bug in debug2html. It wasn't properly checking EOF. The
current status is "it works".  I need to add some syntax error recovery
and a usage message.  Basic stuff.

I've also modified Makefile.in.  If you want to compile it you'll have to
do a 'make debug2html', as I used smbtorture as a model.  We can decide
later if this tool is useful enough to be compiled always.

BTW, a 'make realclean' fails because the bin directory isn't empty.
That's because it doesn't delete optionally compiled files such as
smbtorture and debug2html (and because of the CVS subdirectory, but I
think that's only a problem for developers).

Chris -)-----
(This used to be commit e86fd87a38)
1998-10-27 23:28:29 +00:00
Andrew Tridgell
4586b8737a added a vsnprintf() implementation from cvslock. See the notes on the
license at the top of lib/snprintf.c

I've always been slightly uneasy about our half-baked vslprintf()
implementation and the risks on platforms that don't have vsnprintf()
so when I saw this code in another GPLd package I wanted it for Samba.
(This used to be commit e2cb50af45)
1998-10-26 23:40:33 +00:00
Tim Potter
f9881e8e74 Fix for -fpic rules (.c.po and .c.po32) when using --enable-maintainer-mode.
(This used to be commit 552175fdcb)
1998-10-24 06:23:02 +00:00
Andrew Tridgell
1e60cc49f5 don't enable smbsh/smbwrapper on systems where we can't work out how
to generate PIC code
(This used to be commit a66c56d70e)
1998-10-23 01:51:31 +00:00
Luke Leighton
a0512ce5ff rpctorture command
(This used to be commit b4ae65e2d0)
1998-10-22 22:19:08 +00:00
Andrew Tridgell
b19db1e749 fixes for solaris
(This used to be commit 235a8463b5)
1998-10-20 06:43:36 +00:00
Andrew Tridgell
bd52d5f513 removed my badly-done attempt at handling compilers that don't handle
-c and -o at the same time.

my shell script code wasn't portable
(This used to be commit 759c72822b)
1998-10-20 03:10:29 +00:00
Andrew Tridgell
f52b898a63 - added smbrapper/shared.o
- added suport for C compilers that don't handle -c and -o at once
(This used to be commit f1672d0557)
1998-10-19 01:00:33 +00:00
Luke Leighton
c404bb7754 rpcclient interactive login (with trust account changing if you are root)
cli_session_setup handles null sessions correctly
(This used to be commit 60c0f22a4e)
1998-10-15 23:51:07 +00:00
Andrew Tridgell
21aed50c09 made smbsh a standard binary
(This used to be commit aea466aef7)
1998-10-13 08:26:48 +00:00
Andrew Tridgell
60877fdd8d add "smbtorture" alias for building smbtorture
(This used to be commit 230e4eb3dd)
1998-10-08 06:19:29 +00:00
Andrew Tridgell
3d601dafe9 compile to .po.o first then mv to .po in order to make the sun
compilers happy
(This used to be commit 6625b69646)
1998-10-07 13:27:54 +00:00
Luke Leighton
c07b2bdf90 dce/rpc
(This used to be commit eb279cabd0)
1998-10-06 22:03:04 +00:00
Andrew Tridgell
01b838bfbb clean needs to delete po32 and .so files
(This used to be commit 969eb18064)
1998-10-05 23:34:50 +00:00
Andrew Tridgell
c7d3ad04f1 tell the user we are producing -32 code for the .32.so library
(This used to be commit e9676812af)
1998-10-05 23:31:55 +00:00
Andrew Tridgell
c2bcd64269 the IRIX make is very fussy amount comment lines. If a comment line
has a trailing \ then it continues the comment and wipes out the next
non-blank line!

be careful when commenting out bits of the Makefile
(This used to be commit 450b1813bf)
1998-10-05 23:30:27 +00:00
Luke Leighton
b4fb4caf90 rpcclient srvsvc commands.
(This used to be commit 1a9a22c657)
1998-10-05 15:41:41 +00:00
Andrew Tridgell
bfaff8ed1a got smbwrapper working on IRIX 6.4. Things got a bit tricky,
especially as the headers get the syscall numbers wrong!
(This used to be commit a5405f1ab0)
1998-10-05 12:17:01 +00:00
Andrew Tridgell
f151bf0694 fixed Makefile for IRIX make (it doesn't know %.o=%.po, leaving off
the % works)
(This used to be commit 7c4ad07b59)
1998-10-05 10:53:07 +00:00
Andrew Tridgell
fab6d20f5d new file realcalls.c
(This used to be commit 23f71b979a)
1998-10-05 08:42:22 +00:00
Alexandre Oliva
8327eeabfb just try to rmdir bin after removing bin/.dummy, in realclean
(This used to be commit ef9eca92bb)
1998-10-05 03:44:12 +00:00
Andrew Tridgell
d6da5e4e9d it's a bit dangerous to use rm -rf
(This used to be commit 102e8c85ff)
1998-10-05 03:24:08 +00:00
Alexandre Oliva
601e5b30b5 rm object files created by mkdir probes
make sure it works even if clobbering is not allowed
(This used to be commit eff11b81fd)
1998-10-05 02:56:31 +00:00
Alexandre Oliva
02b6c4eff2 Speed up directory creation for the common case (i.e., it exists already)
Link $(LIBS) in when creating smbwrapper.so

rm -rf bin in distclean

rm smbwrapper files in realclean

remove .h from .SUFFIXES
(This used to be commit a38e7ea04a)
1998-10-05 00:43:48 +00:00
Alexandre Oliva
06eaf71e43 bin/cvsignore: deleted, so that bin can be removed from the repository
.cvsignore: added bin; it is no longer part of the source tree

smbwrapper/smbsh: now auto-generated from smbsh.in
smbwrapper/.cvsignore: added smbsh

configure.in: generate @builddir@
configure, include/stamp-h.in: regen

Makefile.in: new target `smbwrapper'; sped up directory creation
(This used to be commit 8f95ee8fc3)
1998-10-04 22:42:05 +00:00
Alexandre Oliva
11c5c17668 Avoid the message `make: [.deps/.P] Error 1 (ignored)'
(This used to be commit 9ba19d19ad)
1998-10-04 20:54:05 +00:00
Andrew Tridgell
4f31812714 fixed some stuff for Linux that porting to Solaris broke
(This used to be commit ee349bb329)
1998-10-04 14:56:19 +00:00
Andrew Tridgell
3a8232644e started basic support for solaris 2.5 in smbwrapper.
(This used to be commit e5c7cabae4)
1998-10-04 14:02:50 +00:00
Andrew Tridgell
57a58f592b more smbw cleanups.
- cleaned up prototyping. Unfortunately we can't auto-prototype
  wrapped.c because it replaces system functions.
- split stat functions into smbw_stat.c
(This used to be commit 04e92e692e)
1998-10-04 04:33:56 +00:00
Andrew Tridgell
819a6785b3 simplied the layout of the smbwrapper code. All those 3 line files
were getting unwieldy
(This used to be commit a59d4e93da)
1998-10-04 01:36:40 +00:00
Andrew Tridgell
1fa3478aaf drat.
on Linux 2.0 libc detects the lack of getdents in the kernel and used
opendir() etc. so we need to implement those ...

it would be needed for a port to others OSes anyway I suppose.
(This used to be commit e3fd861590)
1998-10-03 16:34:57 +00:00
Andrew Tridgell
86701c6a3c added fchdir() support
(This used to be commit a42729dbf5)
1998-10-03 15:28:47 +00:00
Andrew Tridgell
4d9ab2add2 support getcwd() in smbwrapper
(This used to be commit d516ee383c)
1998-10-03 13:58:07 +00:00
Andrew Tridgell
aa7aacacab added mkdir() and rmdir() support
(This used to be commit ce748e5ea9)
1998-10-03 13:27:56 +00:00
Andrew Tridgell
c0dd3c5c5c added lseek
(This used to be commit 2fbb544d38)
1998-10-03 11:51:01 +00:00
Andrew Tridgell
909ca3a887 added basic chmod(), chown() and utime() support (not fully
implemented).

this is enough to be able to edit files using emacs on the smbwrapper
filesystem
(This used to be commit e5c3f36ef2)
1998-10-03 10:24:49 +00:00
Andrew Tridgell
cce5f09a90 added unlink() and rename() support to smbwrapper
(This used to be commit b85d961447)
1998-10-03 09:39:11 +00:00
Andrew Tridgell
2abaffe61a - remove .p files in make clean
- added readlink support to smbwrapper
(This used to be commit 4b5217f996)
1998-10-03 08:27:39 +00:00
Luke Leighton
732d4ff7da Makefile.in :
- added srvsvc client files

clientgen.c :

	- replaced cli_error(cli, int *cls, int *err) with
	  cli_error(cli, uint8 cls, uint32 *err).  this version detects
	  32 bit status messages.  the DOS error "MORE_DATA", the
	  equivalent of the 32 bit *warning* 0x8000 0005
	  (STATUS_BUFFER_OVERFLOW), was being processed as an error,
	  terminating the cli_receive_trans() call.

cli_pipe.c :

	- replaced calls that had been incorrectly modified from
	  32 bit warnings (0x8000 0005 - STATUS_BUFFER_OVERFLOW)
	  to 8 bit DOS errors (0x01 0xEA - MORE_DATA).
	  the use of the old version of cli_error (DOS only)
	  instead of the new one (DOS and 32 bit) caused the
	  dce/rpc client code to fail.

	- replaced 2 space indentation with tab indentation in all functions.

cli_srvsvc.c :
cmd_srvsvc.c :

	- added these files back in, fixing them up to use jeremy's
	  modified versions of the dce/rpc client functions.

parse_srv.c :

	- added back in some "unused" functions required by dce/rpc
	  client-side code.  it would be helpful if all such "unused"
	  functions could be added back in.

rpcclient.c :

	- added "session", "file", "share", "connection" enumeration
	  functions back in.  these are equivalent to nt's "NetXXXXXEnum"
	  Win32 (MSDN) functions.

	- added "srvinfo" function back in.  this is equivalent to
	  nt's NetServerGetInfo Win32 (MSDN) function.
(This used to be commit bcf39ffdcc)
1998-10-02 21:09:23 +00:00
Andrew Tridgell
643e95f8e9 makefile support for smbwrapper
dosn't compile by default. You need to do "make smbwrapper/smbwrapper.so"
(This used to be commit 686182eb71)
1998-10-02 12:33:44 +00:00
Alexandre Oliva
c393bb69de fix directory creation mechanism; the optimized version would not work :-(
(This used to be commit 796475ad5a)
1998-09-29 05:16:20 +00:00
Alexandre Oliva
6ec9f5d171 optimize creation of directories in build tree
ensure that bin exists when needed
(This used to be commit 87b3e4347a)
1998-09-29 05:05:46 +00:00
Alexandre Oliva
a2d7f765e8 get away with dummy and .dummy files
(This used to be commit 90a8a02484)
1998-09-29 04:52:17 +00:00
Michael Warfield
cdaa53e3ef Two changes in this ball...
1) Changes to smbmnt.c, smbmount.c, and smbumount.c allow them to compile on
both RedHat 4.x (libc 4.x) systems and RedHat 5.x (glibc 2) systems.

2) Changes to Makefile.in and configure.in (and subsequently configure) are to
configure for smbmount, smbumount, and smbmnt to compile.

This adds a "--with(out)-smbmount" option to configure.  Sanity checking is
not present yet.  You can specify this if you are not on linux, it just
won't compile.
(This used to be commit 8a4730f619)
1998-09-28 19:18:21 +00:00
Alexandre Oliva
cf971f88ac automated generation of .dummy files for each subdirectory;
dummy.in files are no longer needed, and new directories will be taken
care of automatically, at configure (or config.status --recheck) time
(This used to be commit 237a8e5fe6)
1998-09-28 00:14:36 +00:00
Jeremy Allison
b053652d49 Added Kerberos4 support patches from Johan Hedin <johanh@fusion.kth.se>
Jeremy.
(This used to be commit 548634915f)
1998-09-26 03:30:15 +00:00
Jeremy Allison
5f7ee36056 Makefile.in: Fixed bug with continuation line causing proto to fail.
Added $(PROGS) $(SPROGS) as targets for make clean.
acconfig.h: Added HAVE_IRIX_SPECIFIC_CAPABILITIES.
configure.in: Added sys/capability.h header check.
              Added function checks for srandom random srand rand.
              Added HAVE_IRIX_SPECIFIC_CAPABILITIES test.
includes.h: Added #include <sys/capability.h>.
ntdomain.h: Moved struct acct_info into here from smb.h
smb.h: Added KERNEL_OPLOCK_CAPABILITY define.
       Moved enum action_type into rpcclient.h
       Moved struct cli_state into client.h
       Moved struct nt_client_info, struct tar_client_info, struct client_info
             into rpcclient.h
lib/genrand.c: Changed to use sys_random() & friends.
lib/smbrun.c: Lose capabilities after fork.
lib/system.c: Added set_process_capability(), set_inherited_process_capability()
              sys_random(), sys_srandom().
lib/util.c: Added Ander's EFBIG lock check to fcntl_lock for 64 bit access to an
            32 bit mounted NFS filesystem.
nmbd/nmbd.c: Changed to use sys_random() & friends.
nmbd/nmbd_browsesync.c: Changed to use sys_random() & friends.
passdb/ldap.c: Missed one pdb_encode_acct_ctrl call.
passdb/passdb.c: Changed to Ander's code for ' ' characters.
passdb/smbpass.c: Added Ander's code to reset ACB_PWNOTREQ.
script/mkproto.awk: Added 'long' to prototypes.
smbd/chgpasswd.c: Lose capabilities after fork.
smbd/open.c: Do the mmap *after* the kernel oplock.
smbd/oplock.c: Removed stub code from kernel oplock path.
               Added set_process_capability(), set_inherited_process_capability() calls.
smbd/reply.c: Initialize count = 0, offset = 0.
smbd/server.c: Added set_process_capability(), set_inherited_process_capability() calls.
tests/summary.c: Ensure we have RANDOM or RAND.
utils/smbpasswd.c: Added Ander's code to reset ACB_PWNOTREQ.
utils/torture.c: Changed to use sys_random() & friends.

Jeremy.
(This used to be commit e8be306f23)
1998-09-25 23:40:49 +00:00
Luke Leighton
6fb5804b28 added in samr commands. assistance in returning the missing functions,
automatically removed because they were "unused", would be appreciated.
(This used to be commit d0f7b0d915)
1998-09-25 22:20:05 +00:00
Luke Leighton
ff07b2e4a3 added wksinfo command to rpcclient, which don't work too good.
(This used to be commit 8d23da91cb)
1998-09-25 21:20:37 +00:00
Luke Leighton
66d5d73a5d added rpcclient program
(This used to be commit aa38f39d67)
1998-09-25 21:01:52 +00:00
Alexandre Oliva
6de1659640 check whether system type is the same as stored in the cache (full
stand-alone macro, candidate for inclusion in the next release of autoconf)

create configure flag --enable-maintainer-mode, that enables automatic
rebuilding of configure from configure.in and aclocal.m4, and of
config.h.in based on acconfig.h.  This assumes autoconf and autoheader
are available.  Maintainer mode also introduces automatic dependency
tracking of include files, but it depends on features provided by gcc
and GNU make, so you must not enable maintainer mode if you are not
using any of these
(This used to be commit 64cba1cc8e)
1998-09-24 08:34:21 +00:00
Andrew Tridgell
e5948ffd7f automatically detect changes in the system type and exit, telling
the user to remove config.cache
(This used to be commit f123172c42)
1998-09-24 04:52:40 +00:00
Andrew Tridgell
e59d7a7f80 some changes to the autoconf support
- added config.cache to "make clean". We get two many bug reports from
  people builing on multiple architectures who don't remove config.cache
  between compiles. Hopefully a future version of autoconf will do
  this automatically

- removed the targets that run autoconf and autoheader. There is far
  too great a risk of a enduser getting a error "autoheader not found"
  if the date on a file is changed. Samba developers will have to run
  autoconf and autoheader manually (as before)
(This used to be commit 811fe3b174)
1998-09-24 01:12:43 +00:00
Alexandre Oliva
ac39ce3eba replace getpass() with getsmbpass() if getsmbpass.c compiles
(This used to be commit 9a5bdf5c1b)
1998-09-21 11:34:44 +00:00
Alexandre Oliva
e649750cb4 major autoconf clean-up
fix problems in builds with srcdir!=builddir
(This used to be commit 1ffc3b807a)
1998-09-21 09:07:08 +00:00
Andrew Tridgell
e9ea36e4d2 tridge the destroyer returns!
prompted by the interpret_security() dead code that Jean-Francois
pointed out I added a make target "finddead" that finds potentially
dead (ie. unused) code. It spat out 304 function names ...

I went through these are deleted many of them, making others static
(finddead also reports functions that are used only in the local
file).

in doing this I have almost certainly deleted some useful code. I may
have even prevented compilation with some compile options. I
apologise. I decided it was better to get rid of this code now and add
back the one or two functions that are needed than to keep all this
baggage.

So, if I have done a bit too much "destroying" then let me know. Keep
the swearing to a minimum :)

One bit I didn't do is the ubibt code. Chris, can you look at that?
Heaps of unused functions there. Can they be made static?
(This used to be commit 2204475c87)
1998-09-05 05:07:05 +00:00
Andrew Tridgell
998db177ba finished the asynchronous browse synchronisation code. It even seems
to work (not a lot of testing yet though).

Now we just need to deal with people worried about having more than
two nmbd processes sometimes. (the async processes are created on
demand for browse sync, so you'll only see more than 2 occasionally)
(This used to be commit a350a54680)
1998-08-30 15:58:17 +00:00
John Terpstra
2aa4ae7311 Fix "make clean" to also delete SPROGS.
(This used to be commit 268cbede0f)
1998-08-21 08:21:08 +00:00
Jeremy Allison
12de4034c7 Makefile.in: Moved blocking lock code into smbd/blocking.c for link purposes.
include/includes.h: Added nterr.h.
locking/locking.c: Moved blocking lock code into smbd/blocking.c for link purposes.
smbd/close.c: Added blocking lock removal to file close.
smbd/filename.c: Tidied up unix_convert() so I could read it (:-) in preparation
                 for the stat_cache code.
smbd/nttrans.c: Added WRITE_ATTRIBUTES check.
smbd/reply.c: Fixed multibyte char problem in wildcard mask.
Jeremy.
(This used to be commit 148eaba3da)
1998-08-19 01:49:34 +00:00
Andrew Tridgell
c3effa8b59 this completes the splitup of server.c.
the splitup was done with an axe, not a scalpel, so there are some
rough edges. I mostly wanted to get the general form right with fine
tuning of what goes where to come later. Still, this is better than
what we had before where server.c was a general repository for
anything that didn't fit elsewhere.
(This used to be commit a6d194886a)
1998-08-17 13:11:34 +00:00
Andrew Tridgell
0922615405 more splitting of server.c
created dosmode.c and filename.c
(This used to be commit 534a90ca44)
1998-08-17 07:40:06 +00:00
Andrew Tridgell
4c5c26b1ef now that we have no global arrays we can start to split up the monster
server.c without breaking things.

this splits off netprot.c and fileio.c for negprot and read/write/seek
handling respectively.
(This used to be commit b3d7014643)
1998-08-17 07:15:54 +00:00
Andrew Tridgell
983dc71c98 moved connection_struct handling code into smbd/conn.c and changed it
to a linked list with bitmap format.
(This used to be commit b7aaab1b6b)
1998-08-17 06:13:32 +00:00
Andrew Tridgell
739d0b1ddc got rid of the Files[] array completely (previously I'd just made it
private to files.c)

It now is a doubly linked list with a bitmap for allocated file
numbers. Similarly for the fd_ptr code. I also changed the default
maximum number of open files to 4096. The static cost is 1 bit per
file.

It all seems to work, and it passes the "does Sue scream" test, but if
you see weird behaviour then please investigate. With the volume of
new code that has gone in there are bound to be one or two bugs
lurking.

note that you must do a "make clean" before building this as many data
structures have changed in size.
(This used to be commit 79755ce970)
1998-08-16 04:08:47 +00:00
Andrew Tridgell
127655cc88 this checkin gets rid of the global Files[] array and makes it local
in files.c

it should now be faily easy to expand the default MAX_OPEN_FILES to
many thousands.
(This used to be commit b088c804f9)
1998-08-15 07:27:34 +00:00
Andrew Tridgell
570f8e9a77 moved the printing related files to a separate printing/ directory.
(This used to be commit d933a47be6)
1998-08-15 03:26:52 +00:00
Andrew Tridgell
b9623ab59e this is the bug change to using connection_struct* instead of cnum.
Connections[] is now a local array in server.c

I might have broken something with this change. In particular the
oplock code is suspect and some .dll files aren't being oplocked when
I expected them to be. I'll look at it after I've got some sleep.
(This used to be commit c7ee025ead)
1998-08-14 17:38:29 +00:00
Jeremy Allison
3cf6cc6134 Makefile.in: Changed so that make proto will work with ldap & nisplus.
locking/locking.c: Made #ifdef'ed out functions static for Make proto.
lib/util.c: Re-instated old mask_match code for UNIX filesystem checks
            only. Client calls use the new mask_match code. Changed the
            name of the old function to unix_mask_match.
Jeremy.
(This used to be commit b68e756ff5)
1998-08-14 02:02:40 +00:00
Herb Lewis
510bcdc0a0 move smbd/print_svid.o from SMBD_OBJ1 to PARAM_OBJ so that nmbd, swat, etc.
will link when SYSV is defined. We may want to restructure this later and
move this to param instead of smbd ???
(This used to be commit 3eff609b7a)
1998-08-13 17:38:26 +00:00
Jeremy Allison
9042aa41c3 Makefile.in: Added CHECK target back in (at Herb's request). Added
manpath in (although we don't currently use it).
client/client.c: Added John Blair's fixes for "put -".
include/nterr.h: Added NT_STATUS_NOTIFY_ENUM_DIR error code.
smbd/nttrans.c: Added in devious fix for one-shot NT change notify bug.
Jeremy.
(This used to be commit 4ac3091e57)
1998-08-11 02:13:01 +00:00
Jeremy Allison
17fb3a2304 Makefile.in: Fixed make clean bug with CVS directory in bin/.
include/smb.h: Fixed bugs in Debug macro's with SGI compiler.
smbd/trans2.c: Fixed bug reported by Zoltan Palmai <ZSPA@chevron.com>
               PR#8903 where get_lanman2_dir_entry() could return a
               mangled name as a resume key and call_trans2findnext()
               wasn't doing the same.
Jeremy.
(This used to be commit 9d010e721c)
1998-08-10 20:12:53 +00:00
Andrew Tridgell
670c6addc3 moved access.c into lib/ from smbd/ as it is needed by testparm. I
modified it not to need any smbd specific structures and instead pass
things from smbd.
(This used to be commit 162141d3b3)
1998-08-10 07:29:57 +00:00
Andrew Tridgell
fa88efbbac split the system password checking routines out of smbd/password.c and
into passdb/pass_check.c. This means SWAT no longer needs to link to
smbd/password.c
(This used to be commit 90d93889d7)
1998-08-10 07:04:53 +00:00
Andrew Tridgell
bad66abfe7 moved username.c into lib/ so we no longer $(PASSDB_OBJ) in most
utilities
(This used to be commit 745d38bfe7)
1998-08-10 05:22:10 +00:00
Andrew Tridgell
89a6525b3c smbtorture now compiles
(This used to be commit 12c8028eb4)
1998-08-10 02:01:18 +00:00
Andrew Tridgell
1c6f52cc28 fixed the installation scripts for the new layout
(This used to be commit 60cdb83f3f)
1998-08-10 01:55:42 +00:00
Andrew Tridgell
65a29b0ca5 the rest of the binaries now compile and link
(This used to be commit 7fecc3d5a2)
1998-08-10 01:25:32 +00:00
Andrew Tridgell
59e2e2c7d8 a few more things compile.
I'll do the rest tomorrow.
(This used to be commit b92ce41c54)
1998-08-09 14:58:51 +00:00
Andrew Tridgell
723b9d0d5b swat compiles, with some even uglier hacks. we really have to do
something about our dependencies between seemingly unrelated code.
(This used to be commit 3ecfd271de)
1998-08-09 14:37:32 +00:00
Andrew Tridgell
19c965894d nmbd compiles and links. I had to do some ugly stuff, putting files in
illogical places. Once I get everything compiled these will need to be
revisited, but at least the new Makefile.in makes it really obvious
what is out of place.
(This used to be commit beef5341fc)
1998-08-09 14:20:02 +00:00
Andrew Tridgell
ea6a257fca close to having nmbd linking (just a bit of repository hacking to go)
(This used to be commit 34dd9b7945)
1998-08-09 14:08:42 +00:00
Andrew Tridgell
35f815d278 this gets smbd compiling and linking correctly with the new layout.
(This used to be commit d08fa39cec)
1998-08-09 13:25:34 +00:00
Andrew Tridgell
963e96f3a9 added --with-nisplus-home option
(This used to be commit 70000c2190)
1998-08-08 01:15:14 +00:00
Christopher R. Hertel
ebd415c03f This is the checkin of the debug changes.
Makefile.in:  I've added debug.o.
  proto.h    :  Rebuilt, as is standard for these sorts of things.
  smb.h      :  New macros, etc.
  util.c     :  Debug code removed.

I'll check in debug.c in the next step.

Chris -)-----
(This used to be commit 653c17c1b8)
1998-07-31 20:16:35 +00:00
Jeremy Allison
7284bb5ca0 Makefile.in: Moved UBIQX stuff into UTILOBJ.
loadparm.c: Added "ole locking compatibility" option (default "true").
locking.c: Changes to implement union in files_struct.
locking_shm.c: Changes to implement union in files_struct.
nttrans.c: Made opening a directory explicit (we have to).
           Added create directory code for nttrans.
reply.c: Changes to implement union in files_struct.
server.c: Changes to implement union in files_struct. Added create directory code.
trans2.c: Changes to implement union in files_struct.
smb.h: Changes to implement union in files_struct.
util.c: Changed linked list code to UNIQX linked list. This will make
        the other lists I need to implement for ChangeNotify and blocking
        locks easier.
Jeremy.
(This used to be commit 3a5eea850b)
1998-07-30 21:18:57 +00:00
Andrew Tridgell
b08931b552 fixed a make proto bug pointed out by Chris.
(This used to be commit fc1947b52a)
1998-07-30 01:49:58 +00:00
Andrew Tridgell
64578c0589 merge from the autoconf2 branch to the main branch
(This used to be commit 3bda7ac417)
1998-07-29 03:08:05 +00:00