1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-15 23:24:37 +03:00

99 Commits

Author SHA1 Message Date
Rusty Russell
3bb65aa159 source3/smbd/conn.c: wean off string_set/string_free
Use straight talloc strings.  This is the only user outside loadparm.c.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2012-08-07 23:20:05 +10:00
Stefan Metzmacher
faa8edccef s3:smbd: make use of smbXsrv_tcon for smb1
Pair-Programmed-With: Michael Adam <obnox@samba.org>

metze
2012-06-25 20:55:06 +02:00
Michael Adam
4389097294 s3:include: change connection_struct->cnum to uint32_t
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-06-06 19:37:14 +02:00
Michael Adam
aa3a7de368 s3:connections: add a CNUM_OFFSET for mapping between cnum and the bitmap index
This moves the start of the range of valid cnum values up from 0 to CNUM_OFFSET
(currently 1), so that in a later step we can use 0 as invalid cnum value
instead of the current -1. This will allow us to change the type of cnum to
uint32_t from a mix of int and unsigned.

Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-06-06 19:37:13 +02:00
Stefan Metzmacher
19d05171fa s3:smbd: let conn_clear_vuid_caches() take a uint64_t vuid
metze
2012-06-06 10:18:41 +02:00
Stefan Metzmacher
f6b6e963f6 s3:smbd: keep 'num_connections' and 'connections' directly under smbd_server_connection
The plan is to have connection_struct as some kind of low level
abstraction for a smb1/smb2 tree connects, that can be used by SMB_VFS modules.

metze
2012-03-06 21:26:05 +01:00
Michael Adam
6ba09e039e s3:smbd:smb2: fix an assignment-instead-of-check bug conn_snum_used()
Accidential "=" instead of "==".

Autobuild-User: Michael Adam <obnox@samba.org>
Autobuild-Date: Wed Feb  1 17:10:15 CET 2012 on sn-devel-104
2012-02-01 17:10:13 +01:00
Andrew Bartlett
6e6aaacedb lib/util Move bitmap.c to lib/util 2011-07-08 11:23:23 +02:00
Andrew Bartlett
ad0a07c531 s3-talloc Change TALLOC_ZERO_P() to talloc_zero()
Using the standard macro makes it easier to move code into common, as
TALLOC_ZERO_P isn't standard talloc.
2011-06-09 12:40:08 +02:00
Andrew Bartlett
d5e6a47f06 s3-talloc Change TALLOC_P() to talloc()
Using the standard macro makes it easier to move code into common, as
TALLOC_P isn't standard talloc.
2011-06-09 12:40:08 +02:00
Andrew Bartlett
ade01f083c s3-smbd Split conn.c into 3 files
The idea with this split is to make it easier to handle dependencies,
avoiding having the loadparm code depend on the global server
variables, without resorting to dummy functions and linker tricks.

conn_clear_vuid_cache() is brought in from uid.c to make it static

Andrew Bartlett
2011-05-31 00:32:07 +02:00
Andrew Bartlett
8524924a46 s3-smbd provide struct smbd_server_connection * to conn_snum_used
This provides the 'sconn' parameter to this key functions, that
is currently duplicated in dummysmbd.c, which causes duplicate symbol
issues in the waf build.

This has natrually caused a number of consequential changes across the
codebase, includning not passing a messaging context into initial
reload_services():

This causes problems because the global smbd_server_connection isn't
yet set up, as there isn't a connection here, just the initial
process.

Andrew Bartlett
2011-05-31 00:32:07 +02:00
Günther Deschner
bbacaec4e9 s3-proto: move more headers to rpc_server/rpc_ncacn_np.h where they origin from.
Guenther

Autobuild-User: Günther Deschner <gd@samba.org>
Autobuild-Date: Fri Apr 29 22:05:07 CEST 2011 on sn-devel-104
2011-04-29 22:05:07 +02:00
Günther Deschner
8c24ebf371 s3: include smbd/smbd.h where needed.
Guenther
2011-03-30 01:13:08 +02:00
Jeremy Allison
e7d0f478ee Add deadtime detection for SMB2. Correctly update lastused timestamp across all active tcons. Should fix dfree cache not updating bug. 2010-10-19 15:13:17 -07:00
Jeremy Allison
d7f4bea394 Add SMB2 paths to smbd/conn.c. Except for conn_idle_all(), to be cleaned up next. 2010-10-19 15:13:17 -07:00
Jeremy Allison
1bd6faa8fa Copyright/whitespace/comment cleanup in preparation for adding SMB2 paths. 2010-10-19 15:13:17 -07:00
Jeremy Allison
edefaf5bed Move tcons.num_open from smb1 to sconn->num_tcons_open as this is needed for SMB2 also. 2010-10-19 15:13:17 -07:00
Volker Lendecke
79a4be4f77 s3: Remove smbd_server_conn from msg_force_tdis 2010-10-03 18:17:09 +02:00
Volker Lendecke
6beb5563f3 s3: Fix a segfault in the printer code using create_conn_struct 2010-08-30 23:06:32 +02:00
Jeremy Allison
d28fa8faab Rename "allow_smb2" -> "using_smb2" and make the usage clearer. 2010-06-09 19:12:02 -07:00
Simo Sorce
5da783f4a7 s3:smbd add utility function to check if there are open pipes 2010-06-07 17:25:48 -04:00
Jeremy Allison
31b12622cf When tearing down the connection make sure we close all files before
freeing the global context, as we close access to the locking db
before freeing the global context.

Jeremy.
2010-05-07 06:54:16 -07:00
Volker Lendecke
d3c6f4ae17 s3: Use bitmap_talloc for smb1 server tcons 2010-03-28 15:25:17 +02:00
Jeremy Allison
d1950d66c4 Make conn_close_all() safe to call from SMB2 sessions (fix crash bug).
Ensure we don't call close_cnum() with SMB2, also talloc_move the
compat_conn pointer from the NULL context onto the tcon context
in SMB2 as it's conceptually owned by that pointer.

Jeremy.
2010-02-24 18:11:07 -08:00
Stefan Metzmacher
c50a03e4e2 s3:smbd: remove dirptr and dirpath from connection_struct
They're both only used in the context of a function,
so we can make them stack variables.

metze
2009-08-07 14:18:17 +02:00
Stefan Metzmacher
70afd419a6 s3:smbd: conn_free_internal() can be static now
metze
2009-08-07 14:18:15 +02:00
Stefan Metzmacher
c54e6b19e3 s3:smbd: add a smbd_server_connection pointer to connection_struct
This can be NULL for faked connection structs used in the rpc server
or printing code.

metze
2009-08-07 14:18:14 +02:00
Stefan Metzmacher
72f8328820 s3:smbd: add a lazy mode for conn_new() and conn_free() for SMB2
metze
2009-06-03 17:54:38 +02:00
Stefan Metzmacher
c862018008 s3:smbd: move tcon specific globals to struct smbd_server_connection
metze
2009-06-03 17:54:38 +02:00
Volker Lendecke
9b3f2e69f7 Make "struct policy" private to srv_lsa_hnd.c 2009-04-19 09:27:14 +02:00
Jeremy Allison
35f4ea221e Fix bug #6155 - "force group" is no longer working as expected.
We need to store the "force group" uid separately from the
conn->server_info token as we need to apply it separately also.
Volker PLEASE CHECK !
Jeremy.
2009-03-03 16:08:56 -08:00
Stefan Metzmacher
3dde0cbb76 s3:smbd: move all globals and static variables in globals.[ch]
The goal is to move all this variables into a big context structure.

metze
2009-01-08 12:22:21 +01:00
Jeremy Allison
e4f5bfb34b Fix use of DLIST_REMOVE as spotted by Constantine Vetoshev <gepardcv@gmail.com>.
This API is unusual in that if used to remove a non-list head it nulls out
the next and prev pointers. This is what you want for debugging (don't want
an entry removed from the list to be still virtually linked into it) but
means there is no consistent idiom for use as the next and prev pointers
get trashed on removal from the list, meaning you must save them yourself.
You can use it one way when deleting everything via the head pointer, as
this preserves the next pointer, but you *must* use it another way when not
deleting everything via the head pointer. Fix all known uses of this (the main
one is in conn_free_internal() and would not free all the private data entries
for vfs modules. The other changes in web/statuspage.c and winbindd_util.c
are not strictly neccessary, as the head pointer is being used, but I've done
them for consistency. Long term we must revisit this as this API is too hard
to use correctly.
Jeremy.
2008-10-01 13:15:54 -07:00
Andrew Tridgell
416fa081ab ensure we exit with non-zero status on EOF on socket, so the parent
can trigger a brlock db cleanup
(This used to be commit bbd49f9e1c4b50c4a596fb991f3306e1e90c0177)
2008-08-13 11:54:12 +02:00
Volker Lendecke
101162257c Move connection-specific vuid cache clear to uid.c
(This used to be commit 1025f687910ce40283c7344ed67ebd5bf31217b7)
2008-06-14 19:49:49 +02:00
Jeremy Allison
c7f5d24d81 Restructuring of code to fix #5460. Remove search
by name code from conn, we were already doing the
same check in the dfs_redirect() function, so move
it into parse_dfs_path() instead.
Jeremy.
(This used to be commit 8a7c6df122c5e4a1d0f74ab0f1bc9376a0a8bcb1)
2008-05-19 13:11:00 -07:00
Jeremy Allison
96ef630ba3 Ensure we don't keep searching for sharename if it's
not the start of the list.
Jeremy.
(This used to be commit 15857534b76bc66ad122510100aa224f17250465)
2008-05-14 14:10:05 -07:00
Jeremy Allison
bafe8d22fd Fix bug #5460. The problem is RHEL5.0 shipped a CIFS client
that sets the DFS bit on pathnames but doesn't
send DFS paths. This causes lookups to fail as
the smbd/msdfs.c code now just eats the first
two parts of the pathname and uses the rest as
the local path. The previous hostname check
used to protect us from that as we knew that
when the hostname was invalid it was a local
path (and a broken client).
I didn't want to put that check back in, but
came up with another idea - even though the
hostname can be a different one, the sharename
must be valid on this machine. So we can check
for a valid sharename instead.
Jeremy.
(This used to be commit e1cda82f6f7de3306a653af920756c1640057f2d)
2008-05-13 14:01:19 -07:00
Volker Lendecke
5bda9a8af0 Remove "user" from connection_struct
(This used to be commit 368454a27cb53a408ec416cbf37235b304592fb5)
2008-05-10 11:17:01 +02:00
Volker Lendecke
776caa081b Replace nt_user_token with server_info in connection_struct
(This used to be commit a3738aef59e97d4533010b048534d937d36c0950)
2008-05-10 11:17:01 +02:00
Volker Lendecke
c881c866d6 Next try at making the vuid cache circular
Jeremy, please check!
(This used to be commit a34f73521712e3820d417f0d9ed811723b7681d6)
2008-05-10 11:17:00 +02:00
Volker Lendecke
58c54eb91f Revert "Second half of 50c891d3: Correctly clear the vuid cache"
This reverts commit 0aea404b0a83736ba2884cc7cf00cd797aab1f56.
(This used to be commit fa39f47f5fc2df0f1a59705e30a799518c353b45)
2008-05-05 15:06:30 +02:00
Volker Lendecke
a529b2e1c3 Second half of 50c891d3: Correctly clear the vuid cache
(This used to be commit 0aea404b0a83736ba2884cc7cf00cd797aab1f56)
2008-05-05 14:53:49 +02:00
Volker Lendecke
d62563342e Remove connection_struct->mem_ctx, connection_struct is its own parent
(This used to be commit 559180f7d30606d1999399d954ceedc798c669a4)
2008-05-05 11:23:13 +02:00
Jeremy Allison
30191d1a57 RIP BOOL. Convert BOOL -> bool. I found a few interesting
bugs in various places whilst doing this (places that assumed
BOOL == int). I also need to fix the Samba4 pidl generation
(next checkin).
Jeremy.
(This used to be commit f35a266b3cbb3e5fa6a86be60f34fe340a3ca71f)
2007-10-18 17:40:25 -07:00
Gerald (Jerry) Carter
e5a951325a [GLUE] Rsync SAMBA_3_2_0 SVN r25598 in order to create the v3-2-test branch.
(This used to be commit 5c6c8e1fe93f340005110a7833946191659d88ab)
2007-10-10 15:34:30 -05:00
Andrew Tridgell
5e54558c6d r23784: use the GPLv3 boilerplate as recommended by the FSF and the license text
(This used to be commit b0132e94fc5fef936aa766fb99a306b3628e9f07)
2007-10-10 12:28:22 -05:00
Jeremy Allison
d824b98f80 r23779: Change from v2 or later to v3 or later.
Jeremy.
(This used to be commit 407e6e695b8366369b7c76af1ff76869b45347b3)
2007-10-10 12:28:20 -05:00
Volker Lendecke
81acb2d805 r22942: Some message_register -> messaging_register conversions
(This used to be commit 65335a420645202fc79c599a1177838ec19a4075)
2007-10-10 12:22:10 -05:00