1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-19 10:03:58 +03:00

38 Commits

Author SHA1 Message Date
Andrew Bartlett
cba7f8b827 s3:dom_sid Global replace of DOM_SID with struct dom_sid
This matches the structure that new code is being written to,
and removes one more of the old-style named structures, and
the need to know that is is just an alias for struct dom_sid.

Andrew Bartlett

Signed-off-by: Günther Deschner <gd@samba.org>
2010-05-21 10:39:59 +02:00
Günther Deschner
9bbf761bfe s3-net: Added a rather trivial "net printing dump" command.
Guenther
2010-05-18 15:06:17 +02:00
Volker Lendecke
89c785c47a s3: Fix a long-standing problem with recycled PIDs
When a samba server process dies hard, it has no chance to clean up its entries
in locking.tdb, brlock.tdb, connections.tdb and sessionid.tdb.

For locking.tdb and brlock.tdb Samba is robust by checking every time we read
an entry from the database if the corresponding process still exists. If it
does not exist anymore, the entry is deleted. This is not 100% failsafe though:
On systems with a limited PID space there is a non-zero chance that between the
smbd's death and the fresh access, the PID is recycled by another long-running
process. This renders all files that had been locked by the killed smbd
potentially unusable until the new process also dies.

This patch is supposed to fix the problem the following way: Every process ID
in every database is augmented by a random 64-bit number that is stored in a
serverid.tdb. Whenever we need to check if a process still exists we know its
PID and the 64-bit number. We look up the PID in serverid.tdb and compare the
64-bit number. If it's the same, the process still is a valid smbd holding the
lock. If it is different, a new smbd has taken over.

I believe this is safe against an smbd that has died hard and the PID has been
taken over by a non-samba process. This process would not have registered
itself with a fresh 64-bit number in serverid.tdb, so the old one still exists
in serverid.tdb. We protect against this case by the parent smbd taking care of
deregistering PIDs from serverid.tdb and the fact that serverid.tdb is
CLEAR_IF_FIRST.

CLEAR_IF_FIRST does not work in a cluster, so the automatic cleanup does not
work when all smbds are restarted. For this, "net serverid wipe" has to be run
before smbd starts up. As a convenience, "net serverid wipedbs" also cleans up
sessionid.tdb and connections.tdb.

While there, this also cleans up overloading connections.tdb with all the
process entries just for messaging_send_all().

Volker
2010-03-10 16:07:10 +01:00
Volker Lendecke
4c1c3f2549 s3: Implement global locks in a g_lock tdb
This is the basis to implement global locks in ctdb without depending on a
shared file system. The initial goal is to make ctdb persistent transactions
deterministic without too many timeouts.
2010-02-12 23:12:09 +01:00
Volker Lendecke
b02c46bef9 Revert "s3: Make run_rpc_command take strings instead of a ndr_interface_table"
This reverts commit 53f2a1595e76db9fe1b42db65b51895b73365993.
2009-11-08 19:43:46 +01:00
Volker Lendecke
53f2a1595e s3: Make run_rpc_command take strings instead of a ndr_interface_table 2009-11-08 13:12:15 +01:00
Günther Deschner
ebe0e64ba9 s3: use enum netr_SchannelType all over the place.
Guenther
2009-10-13 10:21:46 +02:00
Volker Lendecke
0cf317f36f s3: Remove the lua interpreter again
This was meant to support async winbind. But as the hairy parts of async
winbind (getgrent) are done without it, it can go again.
2009-09-29 13:51:43 +02:00
Kai Blin
8f5ef10633 Revert "net: Use samba default command line arguments."
This reverts commit fb262f79fab00374023e59476e8d05a1015a7041
and related commits c36031778e1983ddb11d3e1fcab35e738dbf94bc
72fd5fa6bb78a054fad5e5ebe19a0c0387a7d45b and
38cd0e086f50ce54d88a19aa5a6803469af90489

This change caused more trouble than it solved. We need to do this differently.
Reverting so we don't accidently release this.
2009-07-22 13:39:34 +02:00
Kai Blin
fb262f79fa net: Use samba default command line arguments.
Attention:

The meaning of the -N flag changed.
To get the old meaning for net groupmap set, use the long option --ntname
The long option for using kerberos changed from --kerberos to --use-kerberos

net rpc commands will now prompt for a password if none is given.

As a benefit, net will now accept an authentication file like other samba
command line tools. So no need to specify the password on the command line in
scripts anymore.

This should fix bug #6357

Signed-off-by: Kai Blin <kai@samba.org>
2009-05-25 23:35:38 +02:00
Günther Deschner
21d23bf7e8 s3-net: add "net eventlog dump".
This allows to dump a native (non-wrapped) win32 *.evt eventlog file.

Guenther
2009-02-04 19:01:31 +01:00
Volker Lendecke
09e6dfb8e8 net lua
This adds a lua command line interpreter with some sample code how to build
your own data types based on our internal data types.

Not meant as the final word, but as a playground for experiments for people.
Might be removed later when we find this turns out to be too awkward.
2008-12-17 12:57:19 +01:00
Günther Deschner
9f86dd715a s3-net: add "net rpc vampire passdb" that allows to take arguments.
Guenther
2008-11-18 16:03:05 +01:00
Günther Deschner
b8fee9d863 s3-net: add net_scan_dc function.
Guenther
2008-11-18 16:00:52 +01:00
Kai Blin
694786b23c net: Make share type lookup a function. 2008-09-26 20:52:13 +02:00
Volker Lendecke
05cc3fda05 Refactoring: connect_dst_pipe uses ndr_syntax_id instead of pipe_idx
(This used to be commit 0f77746f36b98acc5171727fa3fc236af9fd2000)
2008-07-21 14:36:28 +02:00
Volker Lendecke
f23567fcb9 Refactoring: run_rpc_command uses ndr_syntax_id instead of pipe_idx
(This used to be commit 850166ec0d17eb85a0c921dc3b966fac0677af4a)
2008-07-21 14:36:28 +02:00
Günther Deschner
adef1b004b net_vampire: add code to vampire a SAM database to a keytab file.
Guenther
(This used to be commit ee6e422c0e035aa4779fa718bb6f142827cc2de0)
2008-06-24 23:40:14 +02:00
Günther Deschner
8049d3aa8e net_vampire: split out rpc_vampire_ldif().
Guenther
(This used to be commit bcc6d3a0ebdcb904b5a2a4de63d9ed7415e9bb33)
2008-06-13 23:39:09 +02:00
Kai Blin
255bdb2602 net: Rename functable3 to functable, get rid of old functables
(This used to be commit bb7c5fc4ec77db4073d3beccf12af12910b6bd07)
2008-06-10 09:48:21 +02:00
Kai Blin
c51ca559c1 net: Make "net rpc" use functable3
(This used to be commit 428b56863c3963ecd041b8398d5683c92fa64307)
2008-06-10 09:47:28 +02:00
Kai Blin
98b9b5b7f3 net: Make "net rap" use functable3
(This used to be commit 7a2364518c4200befb419f2bcbf3afd425fd7a6f)
2008-06-10 09:47:25 +02:00
Kai Blin
54bc155736 net: Make "net ads" use functable3
(This used to be commit 64e3dc63966ecf216b354263e4bd5dfd1491abcc)
2008-06-10 09:47:15 +02:00
Kai Blin
8efc535a4a net: Add net_display_usage_from_functable()
(This used to be commit de0e15b35ea46cfcdd82f45eb3329c44d7aacb90)
2008-06-10 09:45:55 +02:00
Kai Blin
44c260743c net: Add net_run_function3
(This used to be commit ba1108f06ae5860c8f418dc383b027068780abf9)
2008-06-10 09:45:19 +02:00
Kai Blin
6fd35d25bf net: Move net_run_function/net_run_function2 to net_util.c
(This used to be commit 73fb5f392dbc1966ec34217e39d565200e071aaf)
2008-06-10 09:45:14 +02:00
Kai Blin
0210f7af91 net: The top level help function for net cmd is always net_cmd_usage
(This used to be commit f7d0903a58b0b0fc248a613937a101f15baa5311)
2008-05-20 14:28:12 +02:00
Kai Blin
89cd35d054 net: Move help for "net status" to net_status.c
(This used to be commit d26681b169a533f838f74d48af072b57afc9f8df)
2008-05-20 14:28:07 +02:00
Kai Blin
1634bd92ea net: Move printer help to net_rpc where it's used.
(This used to be commit 2ee3d1aefab8dada5bd05a92b72776554617b7f9)
2008-05-20 14:28:03 +02:00
Kai Blin
f9a6d1f264 net: Split out "net share"
(This used to be commit 25d4c6f692cf50d675a1de7c6eaeed271f349289)
2008-05-20 14:28:01 +02:00
Kai Blin
00f6ad7b5a net: Split out "net afs"
(This used to be commit 3f10527f79dddff703d31588cad3e9f37176565b)
2008-05-20 14:27:56 +02:00
Kai Blin
b596529041 net: Move more utility functions into net_util.c
(This used to be commit 0f5ebdf0bc5610bf93a4db67c9f9513683306c66)
2008-05-20 14:27:53 +02:00
Kai Blin
c9ca6092fe net: Split out "net file"
(This used to be commit 84a116be9c849900678e6e0a4b012e819e697c78)
2008-05-20 14:27:47 +02:00
Kai Blin
007f0e19dc net: Split out "net group"
(This used to be commit 3ddd9c09e3b51df01ac34a9a1537e8954d2b1167)
2008-05-20 14:27:40 +02:00
Kai Blin
572de942c7 net: Split out "net user"
(This used to be commit 4ca08a5acc90c77d56f8f3e38443f23f43f034e8)
2008-05-20 14:27:27 +02:00
Kai Blin
666292129b net: Move "net join" handling into a separate file.
(This used to be commit d0237a736858a48494583ce7f960ea980768aa6c)
2008-05-20 14:27:24 +02:00
Kai Blin
45653bd1b1 net: Split out common help functions.
(This used to be commit efc863e3758501a4c62dc9762eb0aded2dad01ff)
2008-05-20 14:27:21 +02:00
Michael Adam
b189fe9154 net: freeze net_proto.h from "make proto"
Michael
(This used to be commit 673b24052a6864579683e9adb56522a12447abca)
2008-05-18 23:31:42 +02:00