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

906 Commits

Author SHA1 Message Date
Volker Lendecke
7b3541f39b Fix a file descriptor leak in add_port_hook
This was probably cut&paste from add_printer_hook which further down has the
unconditional close(fd). In add_port_hook() we're not interested in the output
of 'addport command', so don't create the out fd.
(cherry picked from commit 0c5ca2127ac6e3c71e369242376d27429c3aee5e)
(This used to be commit 9fe09398b79ae7c5e78182112a8cd2c9b5f99ad3)
2008-06-28 16:10:50 +02:00
Volker Lendecke
8fffa902e0 Fix valgrind errors in _spoolss_addprinterdriver
Jerry, this was dropped as part of your SVN r15309 (037f9f83). Can you please
check?

Thanks,

Volker
(cherry picked from commit 5aa2411f0b3720b790439359a2dadb23008e936e)
(This used to be commit 8e7effd58f7790d6e71e38c990f6cb05456e47e1)
2008-06-26 16:55:48 +02:00
Volker Lendecke
a3c0be6325 Change print_access_check to take auth_serversupplied_info instead of current_user
Reason: This is the main user of p->current_user which I would like to remove
(This used to be commit fd43059b3dfa8cdac9814de1c76f963ba5de9bcb)
2008-06-26 13:13:23 +02:00
Volker Lendecke
9ff4001245 Remove "conn" from pipes_struct
For spoolss, we need the client's IP address
(This used to be commit 64a4dfaa826cf9319ef3f5c65023352bf8af539e)
2008-06-24 10:31:36 +02:00
Volker Lendecke
320fadd8fc Remove the reference to current_user_info from share_access.c
This required to pass around the domain a bit
(This used to be commit 17b0db20d28d1b737c5e86b78106657e8ca5ce9c)
2008-05-25 11:43:57 +02:00
Volker Lendecke
1409ed60e2 Fix a memleak in construct_printer_info_7()
Also fix a "ignoring asprintf result" warning
(This used to be commit 64d21f39636019d6a17f84efc6fb9e61e67a235e)
2008-05-06 15:08:30 +02:00
Jeremy Allison
189eb93b73 The first of Martin Zielinski <mz@seh.de> Vista printing patches.
Jerry will test and should get into 3.2 final (and the next 3.0.x
release).
Jeremy.
(This used to be commit 3fc1ab210b8772ee9f867499c0b1a7bb4bcdd285)
2008-04-24 14:04:47 -07:00
Volker Lendecke
b9cc055062 Introduce rpc_pipe_np_smb_conn()
This abstracts away all references to rpc_pipe_client->cli, the only reference
is now in cli_pipe.c.
(This used to be commit c56e1c08cef107ff33a34346ceeca3475a102b19)
2008-04-20 14:08:16 +02:00
Volker Lendecke
0c17878e21 Remove a redundant reference to rpc_pipe_state->cli from srv_spoolss
This assignment is done in cli_rpc_pipe_open called from
cli_rpc_pipe_open_noauth already.
(This used to be commit 7331c4c2781bf7904942c119f1a8de8eda00ae7e)
2008-04-20 14:08:16 +02:00
Jeremy Allison
40d16fa275 Fix bug #5372. With a large CUPS installation with a remote server, contacting
the server when searching for a name for the location and comment fields can
take so much time the client times out. When searching for a name we don't
use these fields anyway, so add a function get_a_printer_search() which
doesn't contact the CUPS server.
Jeremy.
(This used to be commit 92d9f20852d5384e92a93dd0b051034718840ca8)
2008-04-04 11:14:09 -07:00
Marc VanHeyningen
e06aa46b9f Coverity fixes
(This used to be commit 3fc85d22590550f0539215d020e4411bf5b14363)
2008-03-17 20:52:25 +01:00
Volker Lendecke
900288a2b8 Replace sid_string_static by sid_string_dbg in DEBUGs
(This used to be commit bb35e794ec129805e874ceba882bcc1e84791a09)
2007-12-15 22:09:36 +01:00
Jeremy Allison
6dd89174ec Fix return values for invalid printers. Found by kblin
spoolss test.
Jeremy.
(This used to be commit bb8c044d425cf62b76e487103c8fb0b6cd4c83c2)
2007-12-10 12:11:45 -08:00
Jeremy Allison
d2cf97aeba Remove the explicit TALLOC_CTX * from cli_struct.
Make us very explicit about how long a talloc ctx
should last.
Jeremy.
(This used to be commit ba9e2be2b5a59684e854609f9d82ea1633448c62)
2007-11-29 13:24:54 -08:00
Jeremy Allison
0bc4ff7b28 Remove pstring from srv_spoolss_nt.c. All gone from rpc_server/*.c
Jeremy.
(This used to be commit b5a2a1e3f82a0d319fc9a1d76f5166150680f4d4)
2007-11-27 19:05:08 -08:00
Jeremy Allison
93bfb6ca54 Fix old cut-and-paste bug where the wrong field was being written to.
Jerry please check.
Jeremy.
(This used to be commit 6a556fd73ac8c247c15df664f7910f8688abfdbc)
2007-11-27 17:50:39 -08:00
Jeremy Allison
2cda3e7844 Whitespace cleanup.
Jeremy.
(This used to be commit 3052172d2bfe9d787777525e90816394aac2dd54)
2007-11-27 17:48:59 -08:00
Volker Lendecke
1011b32678 Remove some statics
(This used to be commit 1fab16ffb888cd4ec18e52d9da33976a67a5d104)
2007-11-27 14:18:47 +01:00
Jeremy Allison
d40e47db4b Remove more fstring/pstring bad useage. Go talloc !
Jeremy.
(This used to be commit 2a0173743d2cf615d52278f3dd87cc804abe2d16)
2007-11-08 17:25:45 -08:00
Jeremy Allison
f88b7a076b This is a large patch (sorry). Migrate from struct in_addr
to struct sockaddr_storage in most places that matter (ie.
not the nmbd and NetBIOS lookups). This passes make test
on an IPv4 box, but I'll have to do more work/testing on
IPv6 enabled boxes. This should now give us a framework
for testing and finishing the IPv6 migration. It's at
the state where someone with a working IPv6 setup should
(theorecically) be able to type :
smbclient //ipv6-address/share
and have it work.
Jeremy.
(This used to be commit 98e154c3125d5732c37a72d74b0eb5cd7b6155fd)
2007-10-24 14:16:54 -07: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
Jeremy Allison
8e54530b52 Add start of IPv6 implementation. Currently most of this is avoiding
IPv6 in winbindd, but moves most of the socket functions that were
wrongly in lib/util.c into lib/util_sock.c and provides generic
IPv4/6 independent versions of most things. Still lots of work
to do, but now I can see how I'll fix the access check code.
Nasty part that remains is the name resolution code which is
used to returning arrays of in_addr structs.
Jeremy.
(This used to be commit 3f6bd0e1ec5cc6670f3d08f76fc2cd94c9cd1a08)
2007-10-10 18:25:16 -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
Volker Lendecke
0ebab65706 r25534: Apply some const
Why? It moves these structs from the data into the text segment, so they
will never been copy-on-write copied. Not much, but as in German you say
"Kleinvieh macht auch Mist...."
(This used to be commit 0141e64ad4972232de867137064d0dae62da22ee)
2007-10-10 12:31:12 -05:00
Michael Adam
c97fe37ea3 r25294: Tidy up callers of unistr2_to_ascii() to pass sizeof(target_area) to
the maxeln parameter instead of sizeof(target_area) - 1 (or even
sizeof(fstring) - 1 in some places.

I hope these were really all there were.

Michael
(This used to be commit 9a28be220df622322857dfe102fa35e108f932dc)
2007-10-10 12:30:58 -05:00
Volker Lendecke
929e1d9920 r24809: Consolidate the use of temporary talloc contexts.
This adds the two functions talloc_stackframe() and talloc_tos().

 * When a new talloc stackframe is allocated with talloc_stackframe(), then
 * the TALLOC_CTX returned with talloc_tos() is reset to that new
 * frame. Whenever that stack frame is TALLOC_FREE()'ed, then the reverse
 * happens: The previous talloc_tos() is restored.
 *
 * This API is designed to be robust in the sense that if someone forgets to
 * TALLOC_FREE() a stackframe, then the next outer one correctly cleans up and
 * resets the talloc_tos().

The original motivation for this patch was to get rid of the
sid_string_static & friends buffers. Explicitly passing talloc context
everywhere clutters code too much for my taste, so an implicit
talloc_tos() is introduced here. Many of these static buffers are
replaced by a single static pointer.

The intended use would thus be that low-level functions can rather
freely push stuff to talloc_tos, the upper layers clean up by freeing
the stackframe. The more of these stackframes are used and correctly
freed the more exact the memory cleanup happens.

This patch removes the main_loop_talloc_ctx, tmp_talloc_ctx and
lp_talloc_ctx (did I forget any?)

So, never do a

tmp_ctx = talloc_init("foo");

anymore, instead, use

tmp_ctx = talloc_stackframe()

:-)

Volker
(This used to be commit 6585ea2cb7f417e14540495b9c7380fe9c8c717b)
2007-10-10 12:30:24 -05:00
Volker Lendecke
22b30d2a37 r24316: Fix an uninitialized read
Jerry, please check this!

Thanks,

Volker
(This used to be commit db1b89072c3f214c3cb4be844cd7b417e5361615)
2007-10-10 12:29:27 -05:00
Andrew Tridgell
153cfb9c83 r23801: The FSF has moved around a lot. This fixes their Mass Ave address.
(This used to be commit 87c91e4362c51819032bfbebbb273c52e203b227)
2007-10-10 12:28:27 -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
65f7a9d084 r23758: Fix Coverity id 385
(This used to be commit 4d9f627cc8081307da3f84f784602533bd20c1e6)
2007-10-10 12:23:53 -05:00
Volker Lendecke
ac3f08ddbe r23055: Rewrite messages.c to use auto-generated marshalling in the tdb. I'm
doing this because for the clustering the marshalling is needed in more
than one place, so I wanted a decent routine to marshall a message_rec
struct which was not there before.

Tridge, this seems about the same speed as it used to be before, the
librpc/ndr overhead in my tests was under the noise.

Volker
(This used to be commit eaefd00563173dfabb7716c5695ac0a2f7139bb6)
2007-10-10 12:22:17 -05:00
Volker Lendecke
4d5f58c2b9 r23015: Make message_(de)register static to messages.c
(This used to be commit a8082a3c7c3d1e68c27fc3bf42f3d44402cc6f9f)
2007-10-10 12:22:15 -05:00
Volker Lendecke
e95942ed84 r22954: More messaging_register
(This used to be commit 9b8df24107ffe3016031e5257c5680689f061886)
2007-10-10 12:22:11 -05:00
Volker Lendecke
8c3f8e5697 r22911: Pass a messaging_context to message_send_all
(This used to be commit cc92ce665dcfe9054d09429219883b18a4cab090)
2007-10-10 12:22:07 -05:00
Volker Lendecke
fb99bbe675 r22895: Convert some more calls from message_send_buf to messaging_send_buf
(This used to be commit c8b98273406242a89a7e5d1fb5d79120ebe5822a)
2007-10-10 12:22:05 -05:00
Volker Lendecke
4aa44f7475 r22761: This introduces lib/conn_tdb.c with two main functions: connections_traverse
and connections_forall. This centralizes all the routines that did individual
tdb_open("connections.tdb") and direct tdb_traverse.

Volker
(This used to be commit e43e94cda1ad8876b3cb5d1129080b57fa6ec214)
2007-10-10 12:21:55 -05:00
Volker Lendecke
e6383f4762 r22736: Start to merge the low-hanging fruit from the now 7000-line cluster patch.
This changes "struct process_id" to "struct server_id", keeping both is
just too much hassle. No functional change (I hope ;-))

Volker
(This used to be commit 0ad4b1226c9d91b72136310d3bbb640d2c5d67b8)
2007-10-10 12:21:52 -05:00
Jeremy Allison
879081236d r22593: Finish doing the same for raw TALLOC.
Jeremy.
(This used to be commit aef3c262b724d1283187e732833519c4e6fb088c)
2007-10-10 12:19:50 -05:00
Jeremy Allison
79de0ad946 r22588: Make all uses of TALLOC_MEMDUP consistent.
Jeremy.
(This used to be commit 8ad13718af0ba1fcb10a6f1631b1ed3cb8d11175)
2007-10-10 12:19:48 -05:00
Jeremy Allison
1e362c0e7f r22587: Ensure TALLOC_ZERO_ARRAY is consistent.
Jeremy.
(This used to be commit c3df5d08dd6a983f9d53dc6628a50e571d322e8d)
2007-10-10 12:19:47 -05:00
Jeremy Allison
12ba88574b r22542: Move over to using the _strict varients of the talloc
calls. No functional changes. Looks bigger than it is :-).
Jeremy.
(This used to be commit f6fa3080fee1b20df9f1968500840a88cf0ee592)
2007-10-10 12:19:44 -05:00
Jeremy Allison
7f8d89bc54 r22062: Fix the parsing of info level 3. Flags is not a flags
field, but an offset. Fixed 64-bit display of ACLs on
printers.
Jeremy.
(This used to be commit 0c8949ff5d742dbe59f2af0f57a289f238e3592c)
2007-10-10 12:19:07 -05:00
Stefan Metzmacher
bc2b6436d0 r22009: change TDB_DATA from char * to unsigned char *
and fix all compiler warnings in the users

metze
(This used to be commit 3a28443079c141a6ce8182c65b56ca210e34f37f)
2007-10-10 12:19:00 -05:00
Stefan Metzmacher
56ba447668 r22001: change prototype of dump_data(), so that it takes unsigned char * now,
which matches what samba4 has.

also fix all the callers to prevent compiler warnings

metze
(This used to be commit fa322f0cc9c26a9537ba3f0a7d4e4a25941317e7)
2007-10-10 12:18:59 -05:00
Jeremy Allison
8c5846acf2 r21569: Fix bug reported by Martin Zielinski <mz@seh.de>
where return value was incorrectly initialized.
Jeremy.
(This used to be commit 8d45f1f3b524031a34cfba21b677be8a09fc192c)
2007-10-10 12:18:14 -05:00
Jeremy Allison
3ad849db21 r21164: Fix from Martin Zielinski <mz@seh.de> for EnumprinterdataEX
on Vista.
Jeremy.
(This used to be commit b16707a8615e1d00839d31e7a3061fb111336691)
2007-10-10 12:17:45 -05:00
Jeremy Allison
d4135a3bdb r21129: Fix from Martin Zielinski <mz@seh.de> - ensure
the hand marshalled container size is a multiple
of 4 bytes for RPC alignment.
Jeremy.
(This used to be commit 0e9ad2b29f1c05dc3f5d5e9659fe0557fa077d2e)
2007-10-10 12:17:41 -05:00
Jeremy Allison
0150bd394b r21099: Protect ourselves from null pointer deref. This isn't
the correct fix for the Vista bug, but it needed as
protection against invalid RPC. Thanks to Martin Zielinski <mz@seh.de>
for pointing this out.
Jeremy.
(This used to be commit fbab8e4ba93325f68353ee345a257a5445d78e67)
2007-10-10 12:17:37 -05:00
Volker Lendecke
caf8c6a76b r21064: The core of this patch is
void message_register(int msg_type,
                      void (*fn)(int msg_type, struct process_id pid,
-                                void *buf, size_t len))
+                                void *buf, size_t len,
+                                void *private_data),
+                     void *private_data)
 {
        struct dispatch_fns *dfn;

So this adds a (so far unused) private pointer that is passed from
message_register to the message handler. A prerequisite to implement a tiny
samba4-API compatible wrapper around our messaging system. That itself is
necessary for the Samba4 notify system.

Yes, I know, I could import the whole Samba4 messaging system, but I want to
do it step by step and I think getting notify in is more important in this
step.

Volker
(This used to be commit c8ae60ed65dcce9660ee39c75488f2838cf9a28b)
2007-10-10 12:17:32 -05:00
Volker Lendecke
9d8d4f24b1 r19156: Make enumprinters use the share iterators.
Volker
(This used to be commit 9b1759617ce7841a78d9f792254a9e4fa814858f)
2007-10-10 12:15:18 -05:00