1
0
mirror of https://github.com/samba-team/samba.git synced 2025-05-10 02:50:25 +03:00

141 Commits

Author SHA1 Message Date
Luke Leighton
7f63a31062 andrej spotted problem with connect_serverlist (starts off assuming
a connection succeeds...).
(This used to be commit c0efc35b27d50c40bc04bfd9fb1d61ea5d32bde5)
1998-11-30 15:32:15 +00:00
Tim Potter
b70700dba2 Replaced ZERO_STRUCT() with ZERO_STRUCTP() in cli_connect_serverlist().
Fix by Matt Chapman <m.chapman@student.unsw.edu.au>
(This used to be commit c44b418d6fd16a257af21f6b5b29b1cdf26015b7)
1998-11-26 06:35:25 +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 0d21e1e6090b933f396c764af535ca3388a562db)
1998-11-17 16:19:04 +00:00
Andrew Tridgell
3ba68d045c automatically uppercase server and share names (win95 won't handle
lowercase share names!)
(This used to be commit dddf1d8522707b828cac466c4a9ab2807d098573)
1998-11-14 04:16:07 +00:00
Jeremy Allison
24ca89bfb0 Removed acconfig.h configure configure.in include/config.h.in: Made smbwrapper not made
by default.
nmbd*: Changed all calls to namestr() to nmbd_namestr() to fix broken FreeBSD include
	   file problem...sigh.
Jeremy.
(This used to be commit 9ee8f39aed8772a05c203161b4ae6b7d90d67481)
1998-11-14 01:04:13 +00:00
Herb Lewis
d30b6ab548 .cvsignore: Removed old entries.
client/client.c:
include/client.h: Added some debug messages that the old client used to
		  generate. These are needed to make scripts such as
		  'findsmb' work - there may be other changes to keep
		  backwards output compatibility. Do we need a -old-client-compat
		  argument ?
libsmb/clientgen.c: Fixed crash bug where malloc'ed data wasn't being
		    cleared - corrupted malloc chains.
web/swat.c: John's changes to get rid of "ghost" table entries.
(This used to be commit 3c45a3503ea57d17e98eb3e57514161a5c82e45e)
1998-11-12 22:17:51 +00:00
Andrew Tridgell
d85dcf86d5 largely rewrote smbpasswd so that the code is understandable. This
should allow us to call a function in swat rather than piping to
smbpasswd.

while doing this I also fixed quite a few "const char *" versus "char *" issues
that cropped up while using const to track down bugs in the code. This
led to changes in several generic functions.

The smbpasswd changes should be correct but they have not been
extensively tested. At least if I have introduced bugs then we should
be able to fix them more easily than before.
(This used to be commit 713864dd0322ae2ae2d83e333d85be35a7eed4ec)
1998-11-12 06:12:19 +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 bacd3e9d2036a804e73644a28fc498f229c8446c)
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 e14ca7765ace1b721dad8eca4a527a4e4a8f1ab8)
1998-11-09 03:45:49 +00:00
Andrew Tridgell
099dae54dc don't bother trying QFILEINFO/QUERY_FILE_ALL_INFO with win95 as it
totally screws it up, giving garbage for the size fields.
(This used to be commit 86f98e0607e8a05ec026b919cc974c1c934b6882)
1998-11-05 12:42:16 +00:00
Andrew Tridgell
4f2a6adb7c added a couple more error codes to cli_error()
(This used to be commit b2a7f85d597d4d2a71fd38d76aac0464d53df626)
1998-10-26 03:31:00 +00:00
Andrew Tridgell
fb556e14f3 volker was concerned about unique inode numbers and smbsh. This set of
changes uses the unique index number from a SMB_QUERY_FILE_ALL_INFO to
try to provide inode numbers. If it is 0 then use the hash of the
filename as before.
(This used to be commit 2565ccf9de9d5e80fdb5bcadbc7130faba386d95)
1998-10-24 08:08:05 +00:00
Luke Leighton
01de603084 - dce/rpc code
- removed debug info in struni2 and unistr2 (security risk)

- rpc_pipe function was getting pointer to data then calling realloc *dur*

- password check function, the start of "credential checking",
  user, wks, domain, pass as the credentials (not just user,pass which
  is incorrect in a domain context)

- cli_write needs to return ssize_t not size_t, because total can be -1
  if the write fails.

- fixed signed / unsigned warnings (how come i don't get those any more
  when i compile with gcc???)

- nt password change added in smbd.  yes, jeremy, i verified that the
  SMBtrans2 version still works.
(This used to be commit fcfb40d2b0fc565ee4f66b3a3761c246366a2ef3)
1998-10-19 17:32:10 +00:00
Andrew Tridgell
9debf0b1ee improved session reestablishment
(This used to be commit 5f96328d32e76785474ffd5cd73f8ddefc46d4f5)
1998-10-19 02:48:57 +00:00
Andrew Tridgell
d5c190bae8 return the resolved IP on a cli_connect() call so it can be cached
(This used to be commit 4e3f8ef41b8de25dec4c01d5532dca1b567be55a)
1998-10-19 01:05:11 +00:00
Andrew Tridgell
62811de4e8 - use large buffers for netshareenum
- handle errmoredata a bit better
- fix dev type from tconx for smbw
(This used to be commit 2f39409dc1ef012a8a7d315572a489d15df186f7)
1998-10-16 17:40:01 +00:00
Jeremy Allison
070b334891 trans2.h: Added Thursby MAC extension.
smbd/trans2.c: Added Thursby MAX extension.
libsmb/clientgen.c: Fixed smbtorture lock code.
Jeremy.
(This used to be commit 514e52e4b4d6c7db7ebe2265e60c77b4f18d11b3)
1998-10-16 00:54:16 +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 60c0f22a4e84703467006dfe1971384a6294a9aa)
1998-10-15 23:51:07 +00:00
Luke Leighton
827a9d862e dce/rpc
(This used to be commit dfb48aab6153e53a5efd1f8ee518375cc584b101)
1998-10-10 00:46:28 +00:00
Luke Leighton
78c1fd054f dce/rpc
(This used to be commit 8a7ac4a25d177235a98c0f84f97ee50432fb6359)
1998-10-09 23:31:50 +00:00
Luke Leighton
8158620124 dce/rpc.
(This used to be commit e0445419b2d50ae6efef36f4f295ebcfdbf1ad82)
1998-10-09 20:17:11 +00:00
Luke Leighton
4e004a0b5e basic client-side ntcreateX function (hard-wired values except filename)
(This used to be commit caeb99201a1471bd709b4e8f07c57e5caabf0795)
1998-10-09 19:34:57 +00:00
Luke Leighton
6909350ed9 dce/rpc
(This used to be commit 62fdeef1b79c5c4c9bf0e860881651711bb80b9a)
1998-10-08 23:57:46 +00:00
Andrew Tridgell
a813f38e2d - don't generate 0 params in torture
- handle 0 params in ipc.c
(This used to be commit c0dc8e87f0d56444a8ddff0817a94065ca295847)
1998-10-08 06:49:00 +00:00
Andrew Tridgell
788263ba2f - fixed a bunch of warnings and minor errors
- got smbtorture to compile
- removed %D from some of lukes code - Luke, what is %D? it ain't
  portable anyway
(This used to be commit 91597c12fb593f49b23c7cea5b64dbb89a0428b3)
1998-10-08 06:21:33 +00:00
Andrew Tridgell
4750ce1760 use 1 second resolution calls if possible
(This used to be commit 349469221a84658048790d7567b4fcea43c0b759)
1998-10-08 02:28:21 +00:00
Andrew Tridgell
029144cd8c do an anonymous login if the username/password is rejected.
(This used to be commit 0ee3e0c62378bdf7a8e145de0727ea85763af95a)
1998-10-07 00:40:18 +00:00
Andrew Tridgell
cbb25c71d0 fixed rename error code from NT servers
(This used to be commit e7516901270a4a790a3e346065eb2be8ede16cb3)
1998-10-06 13:20:06 +00:00
Andrew Tridgell
404f14fb36 implemented unix semantics for rename in smbwrapper
(This used to be commit a5c18f9c82f5f76b00ff29c5668b4f0d3e8d6bd0)
1998-10-06 13:10:06 +00:00
Luke Leighton
b4fb4caf90 rpcclient srvsvc commands.
(This used to be commit 1a9a22c657c46648adaa98ac1fe394ce4bce11f0)
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 a5405f1ab069a3123a819311a87ca84f2c5f0fea)
1998-10-05 12:17:01 +00:00
Andrew Tridgell
ecb7ee7a03 handle ENOTDIR errno in cli_error()
(This used to be commit f1d82e02ff7f2201de5fb13af4cadec648765017)
1998-10-05 02:45:50 +00:00
Andrew Tridgell
40984f6b55 - modified resolve_name() to take a name_type
- cleaned up resolve_name() (split into separate functions for each resolver)
- if can't find local master then use #1B name
- support listing of foreign workgroups in /smb/
(This used to be commit a4e607c17d1119925c9d0e1d05e0fe81e9a2d1aa)
1998-10-04 12:00:40 +00:00
Andrew Tridgell
1970c92c0a support NetServerEnum in smbwrapper. You can now do a ls in /smb/ and
it will list all servers in your workgroup. You can set your workgroup
with the SMBW_WORKGROUP environment variable.
(This used to be commit 64699810e2d94e8648a0a3341b1cc826d4e8bfd9)
1998-10-04 11:25:06 +00:00
Andrew Tridgell
7c3c022a89 use *SMBSERVER convention in smbwrapper to allow us to connect to
servers that we don't know the netbios name of.
(This used to be commit 147d49dade3901835b5d60b02c495bea544ff5e9)
1998-10-04 10:46:52 +00:00
Andrew Tridgell
a1b002fcbe add support for unlink() on printer shares in smbwrapper. unlink()
will remove the job from the pirnt queue.
(This used to be commit 7bd738c30a09a211fd14a8544309efeec17c66f5)
1998-10-04 10:14:21 +00:00
Andrew Tridgell
6760e69a68 added support for printing via smbwrapper
You can print using "cp filename /smb/SERVER/PRINTER/jobname"

You can list the current printqueue using ls
(This used to be commit 080fb61b69620e26e8122705383dc2bd0468a519)
1998-10-04 09:42:51 +00:00
Andrew Tridgell
52e5dbeb9c use CLI_BUFFER_SIZE instead of BUFFER_SIZE
(This used to be commit 98f9bb94fcdd0195158eba0deaebe4679baea44c)
1998-10-04 07:51:34 +00:00
Andrew Tridgell
f3db9286f9 fix an error code in cli_error()
(This used to be commit bbc891727e57172bf6200e10c32498776a77510b)
1998-10-04 06:43:41 +00:00
Andrew Tridgell
5ade894f32 modified cli_read() and cli_write() to issue multiple outstanding
read/write requests for large reads. up to max_mux requests may be
outstanding. This gives _much_ better throughput and should allow
smbsh to saturate just about any network.

this is an implementation of the "fast SMB" method I described on the
CIFS list a couple of months back.
(This used to be commit c728d1c5d6e4626d2f8e318eab4df32acc8cb505)
1998-10-04 06:22:08 +00:00
Andrew Tridgell
a1e10cfc3c use const char
(This used to be commit 83b7bfa821b88f0826b348ec493141a324e12a86)
1998-10-04 03:27:04 +00:00
Andrew Tridgell
8d4c732621 fixed a authentication problem with non-encrypting servers
(This used to be commit 06f1af12c37fc759e7315366dd4e82f4e96b042d)
1998-10-03 15:55:18 +00:00
Andrew Tridgell
f2d8f110db fixed vi on smbwrappper (it was a problem in cli_read())
(This used to be commit 1dcc84b942d4669f978aebdeaf85ea609c2b732f)
1998-10-03 15:01:11 +00:00
Andrew Tridgell
03a06267f4 added simple device/inode number support based on a checksum of the
filename
(This used to be commit 5674fb4e9dc4d92213d763c8cecd26efc23a9720)
1998-10-03 13:12:08 +00:00
Andrew Tridgell
4fedb9ddd5 - always open for reading (otherwise getattrE won't work).
- added somemore NT error codes
(This used to be commit a0632529133fdaff9d70ac3e0cf6bb021c79438e)
1998-10-03 11:53:37 +00:00
Andrew Tridgell
cce5f09a90 added unlink() and rename() support to smbwrapper
(This used to be commit b85d96144728e8a29c7c1114462e28bf3b144b80)
1998-10-03 09:39:11 +00:00
Andrew Tridgell
27e5850fd3 - ignore *.p files
- enable cli_RNetSharEnum
- fix password handling in sesssetup for NT1 protocol
- handle partial reads and writes in cli_{read,write}
- added cli_getattrE
- modify cli_qpathinfo() to swap byte order for win95 servers
- handle temporary errors from FINDFIRST/FINDNEXT from win95 servers,
  when we get a error we sleep for a bit and retry
- return approx unix errno from cli_error(). Need to add a lot more
  cases to this.
(This used to be commit 715a6631c714bbd6a965e45fba1e0d0b37a27df6)
1998-10-03 08:33:07 +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 bcf39ffdcc64e049bca2d70a394a99976291e81d)
1998-10-02 21:09:23 +00:00
Andrew Tridgell
019c8d2fdd several clientgen mods to support smbwrapper. In particular added
cli_list() for directory listing and expended some other functions a
bit.
(This used to be commit 9bae21abaf3d69a204c6e617f06094303da4da48)
1998-10-02 12:36:18 +00:00
Jeremy Allison
5a8458c377 libsmb/clientgen.c: Fixed signed/unsigned compile warnings spotted by Herb.
param/loadparm.c:
smbd/oplock.c: Allow kernel oplocks to be turned off in the smb.conf file.
smbd/server.c: Move init_structs() to after the smb.conf file is loaded - preparation
               for making a "max open files" parameter.
Jeremy.
(This used to be commit 6a261517a09b005f502a37941431308fa8bf2c5c)
1998-09-30 01:05:51 +00:00