1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-25 23:21:54 +03:00
Commit Graph

126 Commits

Author SHA1 Message Date
Andrew Bartlett
bb6af711b8 This is the current patch from Luke Leighton <lckl@samba-tng.org> to add a
degree of seperation betwen reading/writing the raw NamedPipe SMB packets
and the matching operations inside smbd's RPC components.

This patch is designed for no change in behaviour, and my tests hold that to be
true.  This patch does however allow for the future loadable modules interface
to specify function pointers in replacement of the fixed state.

The pipes_struct has been split into two peices, with smb_np_struct taking the
information that should be generic to where the data ends up.

Some other minor changes are made: we get another small helper function in
util_sock.c and some of the original code has better failure debugs and
variable use. (As per on-list comments).

Andrew Bartlett
(This used to be commit 8ef13cabdd)
2002-01-20 02:40:05 +00:00
Andrew Tridgell
1f31ace6cb much better ADS error handling system
(This used to be commit 05a90a2884)
2001-12-19 12:21:12 +00:00
Andrew Tridgell
a062e58d9e - added initial support for trusted domains in winbindd_ads
- gss error code patch from a.bokovoy@sam-solutions.net
- better sid dumping in ads_dump
- fixed help in wbinfo
(This used to be commit ee1c3e1f04)
2001-12-19 08:44:23 +00:00
Andrew Tridgell
ad2974cd05 added "net join" command
this completes the first stage of the smbd ADS support
(This used to be commit 058a5aee90)
2001-11-24 14:16:41 +00:00
Andrew Tridgell
59efa068bd always install swat language files
(This used to be commit f283011c28)
2001-10-15 05:15:31 +00:00
Andrew Tridgell
81f56139b6 initial kerberos/ADS/SPNEGO support in libsmb and smbclient. To
activate you need to:

- install krb5 libraries
- run configure
- build smbclient
- run kinit to get a TGT
- run smbclient with the -k option to choose kerberos auth
(This used to be commit d330575856)
2001-10-11 07:42:52 +00:00
Tim Potter
18190fc051 Add CLI_POLICY_HND as a valid return type.
(This used to be commit 880201b52b)
2001-10-05 00:16:04 +00:00
Motonobu Takahashi
1817c231c7 now --with-i18n-swat works to install some international files
used by SWAT into $swatdir/$ln/{help,images,include}

we have still points which needs to discuss, that is how to archive
and install lots of HTML help files and Using Samba files.

-- monyo
(This used to be commit 9ec2d5e96e)
2001-09-25 17:40:12 +00:00
Andrew Bartlett
f3d8f6b198 Try to fix up manpage installation
(This used to be commit a302bb20e2)
2001-09-25 02:01:29 +00:00
Motonobu Takahashi
14403d5e8a fixed a typo in installman.sh
fixed a problem that source/install-sh is not executable
(This used to be commit c2e256c18c)
2001-09-24 18:22:46 +00:00
Motonobu Takahashi
96db4b1ba3 Added SWAT i18n feature:
TO enable configure with --with-i18n-swat
  to support this gettext is integrated
  and a new directories name "po" and "intl" are created.

  now these languages are supported:

  en - English (default)
  ja - Japanese
  po - Polish
  tr - Turkish

  To add your language,
  to create ${your_language}.po by translating source/po/en.po
  into your language is needed.

  some of html and image files of various language version are not
  included yet, though message catalogue files are installed.
  you need to copy files manually under
  ${swatdir}/lang/$ln/{help,images,included,using_samba}


And also added a option to intall manual pages:
of various lang version
  To enable configure with --with-manlangs
  but manual pages themself are not included yet.
(This used to be commit 486b79a6fc)
2001-09-24 15:55:09 +00:00
Andrew Bartlett
14811e7d0a Try to fix up the shell syntax
(This used to be commit f57b1085b3)
2001-09-19 13:29:33 +00:00
Andrew Bartlett
b882efea35 typo
(This used to be commit 7a47e0fceb)
2001-09-19 11:44:00 +00:00
Andrew Bartlett
31c44c4744 Adding the appropirate files might help...
(These are part of the build_options patch).

Andrew Bartlett
(This used to be commit 4e5c7724b4)
2001-09-19 10:45:33 +00:00
Andrew Tridgell
b30e75692d replaced stdio in many parts of samba with a XFILE. XFILE is a cut-down
replacemnt of stdio that doesn't suffer from the 8-bit filedescriptor
limit that we hit with nasty consequences on some systems

I would eventually prefer us to have a configure test to see if we need
to replace stdio, but for now this code needs to be tested widely so
I'm enabling it by default.
(This used to be commit 1af8bf34f1)
2001-09-10 11:08:57 +00:00
Andrew Tridgell
fd6ea43161 the next step in our error code handling change
- added WERROR for win32 error codes
- added a configure test for immediate structures

still lots to do, so its not enabled by default, but the main
structure is there
(This used to be commit 24f9ab683d)
2001-09-03 08:50:59 +00:00
Herb Lewis
1d726fe0e0 new logs use abbreviated month names. Add this to date conversion
(This used to be commit 8021669b16)
2001-08-27 18:24:04 +00:00
Andrew Tridgell
e8e98c9ea0 converted smbd to use NTSTATUS by default
major changes include:

- added NSTATUS type
- added automatic mapping between dos and nt error codes
- changed all ERROR() calls to ERROR_DOS() and many to ERROR_NT()
  these calls auto-translate to the client error code system
- got rid of the cached error code and the writebmpx code

We eventually will need to also:
- get rid of BOOL, so we don't lose error info
- replace all ERROR_DOS() calls with ERROR_NT() calls

but that is too much for one night
(This used to be commit 83d9896c1e)
2001-08-27 08:19:43 +00:00
Andrew Tridgell
87fbb7092b The big character set handling changeover!
This commit gets rid of all our old codepage handling and replaces it with
iconv. All internal strings in Samba are now in "unix" charset, which may
be multi-byte. See internals.doc and my posting to samba-technical for
a more complete explanation.
(This used to be commit debb471267)
2001-07-04 07:15:53 +00:00
Simo Sorce
82970b833c initial support for paramter type P_LIST
it will avoid problems with lists being longer than 1024 bytes
just now only ip list parameters have been converted to the new type
(hosts allow, hosts deny, ssl hosts, ssl hosts resign)
(This used to be commit e1572f85d6)
2001-06-20 16:54:32 +00:00
Tim Potter
13dd825d57 Cosmetic changes in make proto output.
(This used to be commit 858290d63b)
2001-05-14 04:11:39 +00:00
Andrew Tridgell
6056766247 merge some fixes from 2.2
(This used to be commit 7e57adf2a0)
2001-05-07 03:55:54 +00:00
Andrew Tridgell
d095b5249c - added test for vasprintf
- cleaned up GNUC printf attribute macros
- added enum handling in mkproto
- removed non-vararg code
- made slprintf and vslprintf just macros for snprintf and vsnprintf
- don't need slprintf code any more
(This used to be commit c7aeb2254d)
2001-04-28 13:49:34 +00:00
Jeremy Allison
7c7770a366 Patch from Frdric Blanc <el_blaf@yahoo.fr> to correctly uninstall
codepages.
Jeremy.
(This used to be commit 231f1f44c3)
2001-04-27 19:03:29 +00:00
Herb Lewis
95004fc9dd row of asteriks that indicates new entry must start at beginning of line.
(This used to be commit df4a31580c)
2001-04-23 23:44:25 +00:00
Gerald Carter
9305a8f710 merge from 2.2
(This used to be commit b6227751f1)
2001-03-25 06:05:57 +00:00
Herb Lewis
93261949f5 merge from 2.0 branch for installing Using Samba book files
(This used to be commit b04bd9ea24)
2001-01-12 21:47:01 +00:00
David O'Neill
3380ffae9c Changes from APPLIANCE_HEAD:
testsuite/printing/psec.c
        - Use lock directory from smb.conf parameter when peeking at the
          ntdrivers.tdb file.
    source/rpc_parse/parse_sec.c
        - fix typo in debug message
    source/script/installbin.sh
        - create private directory as part of 'make install'.
    source/nsswitch/winbindd_cache.c
    source/nsswitch/winbindd_idmap.c
    source/passdb/secrets.c
    source/smbd/connection.c
        - always convert tdb key to unix code-page when generating.
    source/printing/nt_printing.c
        - always convert tdb key to unix code-page when generating.
        - don't prepend path to a filename that is NULL in
          add_a_printer_driver_3().
    source/rpc_server/srv_spoolss_nt.c
        - always convert tdb key to unix code-page when generating.
        - don't prepend server name to a path/filename that is NULL in the
          fill_printer_driver_info functions.
    source/printing/printing.c
        - always convert tdb key to unix code-page when generating.
        - move access check for print_queue_purge() outside of job delete
          loop.
    source/smbd/unix_acls.c
        - fix for setting ACLs (this got missed earlier)
    source/lib/messages.c
        - trivial sync with appliance_head
(This used to be commit 376601d17d)
2001-01-11 20:41:19 +00:00
Tim Potter
2db833d5f1 If extra arguments passed make yodl docs for these files rather than *.yo
(This used to be commit b57fbcca06)
2000-12-21 23:27:51 +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 4339e20202)
2000-12-06 23:24:31 +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 0b92d0838e)
2000-11-13 23:03:34 +00:00
Jeremy Allison
ace6739f5e vfs write data fix. Fix for name matching in addtosmbpass
Jeremy.
(This used to be commit 85738b7ee1)
2000-08-25 20:44:33 +00:00
Jeremy Allison
06e4f11acd Fixed up the user/group contexts when using authenticated pipes.
Added a become_root()/unbecome_root() (push/pop security context)
around the initgroups() call to ensure it would succeed. Hmmm - I
wonder if this call being done as non-root might explain any "group access"
bugs we've had in the past....
Jeremy.
(This used to be commit 06a65972e8)
2000-08-04 00:59:09 +00:00
Gerald Carter
05fdec749d grab functions that return RPC_HND_NODE (declared
in include/util_list.h)



-- jerry
(This used to be commit ccebd70df2)
2000-07-18 05:10:26 +00:00
Tim Potter
dc7b20a47d Make prototypes for functions returning an enum nss_status.
(This used to be commit dac9c934ac)
2000-07-06 06:48:01 +00:00
Gerald Carter
33f6a1d9bb 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.

--jerry
(This used to be commit 269051aa0c)
2000-07-03 04:28:29 +00:00
Luke Leighton
84d40095e1 added a NET_USER_INFO_3 struct to user_struct.
register_vuid fills it with constructed info.
(This used to be commit b1889e4334)
2000-06-08 13:56:07 +00:00
Jeremy Allison
1365442684 More stuff I cvan't afford to lose. I'm realizing how dependent I am
on this bloody CVS link....
Jeremy.
(This used to be commit 864e7bde0e)
2000-06-01 02:44:17 +00:00
Andrew Tridgell
c23e01d049 the beginnings of a new scheme I've working on to allow an easier
head/tng merge.

It goes something like this:

- headers from tng get copied over one at a time

- the old headers get renamed to *_old.h

- server side code that used the old headers gets a
  #define OLD_NTDOMAIN 1
  #undef OLD_NTDOMAIN
  at the start and end of the code

- mkproto.awk recognises these special defines and does magic stuff so
  that each .c file sees the right headers

- we start moving the rpc client libraries from tng to head.

if this goes OK then, in theory, we should be able to move the client
side rpc code from tng to head without disturbing the existing head
server side code. Then when that works we can consider merging the
server side.

it remains to be seen if this scheme will work. So far I've moved
rpc_samr.h and don't seem to have broken anything.

Note this this is still a very delicate operation, as at every step of
the way I want to keep head fully functional. Please don't take part
unless you discuss it with me first.
(This used to be commit f76c037255)
2000-05-09 13:28:19 +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
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
Jeremy Allison
7c51c5ddf3 Samba now includes a full ucs2 upper to lower case (and vica versa) map table.
Jeremy.
(This used to be commit d7b72d4cbf)
1999-12-23 01:57:43 +00:00
Jeremy Allison
8dc6098539 Awk script to create #include C code from unicode upper -> lower case map.
Jeremy.
(This used to be commit e59fe73f19)
1999-12-23 01:41:19 +00:00
Jeremy Allison
e7851ce52e First cut at unicode sys_xx functions. Now to start moving upwards.....
Jeremy.
(This used to be commit b5eb009cc3)
1999-12-22 01:29:22 +00:00
Andrew Tridgell
69d24d869b first cut at using the tdb code for the connections structure, the
SWAT status page and smbstatus. It made the code _much_ simpler, I
wish we'd done a database module a long time ago!
(This used to be commit 4951755413)
1999-12-21 04:54:30 +00:00
Andrew Tridgell
32a965e09c 2nd phase of head branch sync with SAMBA_2_0 - this delets all the files that were in the head branch but weren't in SAMBA_2_0
(This used to be commit d7b2087865)
1999-12-13 13:35:20 +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
702b085293 preparation for doing a spoolss enum jobs command. had to rewrite
spoolss_enumjobs parsing code to do read / writes not just writes.
(This used to be commit bc659a09f9)
1999-11-08 22:00:41 +00:00
Luke Leighton
0f18ca772d added rpcclient spoolenum command. enumerates printers.
spoolss_r_io_enumprinters doesn't decode strings correctly
as printer_info_1/2 code has only been written to write
structures, not read them.
(This used to be commit 135eaa9773)
1999-11-06 19:52:04 +00:00
Luke Leighton
c015b02b43 three types of array-creation / array-deletion functions:
char*
UNISTR2*
SID*

decided to create a higher-order function set, add_item_to_array()
free_item_array().

higher-order support routines needed to add a new type:

type* item_dup(const type*)
void item_free(type*)

of course, strdup() and free() are perfect, pre-existing examples
of such functions, used in the implementation of add_chars_to_array()
and free_char_array().

sid_dup() and free() work for the add_sids_to_array() and free_sid_array()
implementations.

use unistr2_dup() and created unistr2_free() because the functionality
behind these may change into something horrible, like [horror] dynamic
memory allocation of the UNISTR2 character array.  argh!!!!

jean-francois, this function set implements what we talked about over...
a year ago, now :-)
(This used to be commit a80ea2eb47)
1999-11-03 19:58:47 +00:00