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

269 Commits

Author SHA1 Message Date
Volker Lendecke
9f6e983d0b Convert read_smb_length to return NTSTATUS
(This used to be commit 5750c3a51b4ddac635a98195d1621b24f91bad3f)
2008-02-02 11:03:21 +01:00
Volker Lendecke
0afbfa4284 Convert read_smb_length_return_keepalive to return NTSTATUS
(This used to be commit 73a79a957a33a8761acf54598ce71e3604ecf3c5)
2008-02-02 11:03:21 +01:00
Volker Lendecke
3e5b98555b Convert read_smb_length_return_keepalive to read_socket_with_timeout_ntstatus
(This used to be commit 59e8f22f36be5a70fdb101964570ce7c10e8ff65)
2008-02-02 11:03:21 +01:00
Volker Lendecke
3f970f91c2 Add read_socket_with_timeout_ntstatus
(This used to be commit 546ca0414aa1a9389e620b8f532224a3a19256d4)
2008-02-02 11:03:21 +01:00
Volker Lendecke
680a0f0c69 Fix a typo
(This used to be commit 1efdef08ae19a01b03bf6730df1fb4a9a4a8aba0)
2008-02-01 23:32:51 +01:00
Volker Lendecke
e2ad28509c Tiny simplification
(This used to be commit e78f6872bfc19ce0476b8d79c856a8d9c646a913)
2008-01-25 20:55:51 +01:00
Volker Lendecke
31a6f80784 Remove a pointless while loop
(This used to be commit f591bd68eafdbaefcaa95510cc4cb9a74cef0562)
2008-01-25 20:55:51 +01:00
Volker Lendecke
9344628bef More read_data -> read_socket_with_timeout
(This used to be commit f1d7de462cf0f64648a3a1fc6f0c64a7bbdb3c2a)
2008-01-24 09:41:22 +01:00
Volker Lendecke
a925a53f61 read_socket_with_timeout has timeout=0 handling
(This used to be commit 7101026061c470ed962267b43ac0aa67cc761a64)
2008-01-23 17:09:10 +01:00
Kai Blin
36e3e75e06 util_sock: Don't return a pointer to freed memory.
Fix a bug in my bugfix. Thanks to vl for spotting that one.
(This used to be commit 24f68b90cca111256a7b03f7062cb57c2b08a0d6)
2008-01-21 18:02:24 +01:00
Kai Blin
7b6a439efe util_sock: Fix memcache bug in get_mydnsfullname.
get_mydnsfullname relied on memcache_add(); memcache_lookup() working.
When run from ntlm_auth, the global_cache variable in memcache is NULL, so
the add and lookup both fail. In that case, just return the result of the
getaddrinfo call.

Jeremy, please check.
(This used to be commit 1db41ff52565e9f336a22fb9ffd80d51677e023b)
2008-01-21 13:28:06 +01:00
Jeremy Allison
bd8abea49f Fix IPv6 bug #5204, which caused krb5 DNS lookups
for a name '[<ipv6 addr>'.
Jeremy.
(This used to be commit f2aa921505e49f894bfed4e5e2f9fc01918b1bb0)
2008-01-16 13:21:46 -08:00
Jeremy Allison
9254bb4ef1 Refactor the crypto code after a very helpful conversation
with Volker. Mostly making sure we have data on the incoming
packet type, not stored in the smb header.
Jeremy.
(This used to be commit c4e5a505043965eec77b5bb9bc60957e8f3b97c8)
2008-01-04 12:56:23 -08:00
Volker Lendecke
149e86b842 Trivial simplification
... things you come across when you review code
(This used to be commit 1e006bcfb15d44ecb81b6994c588d30d87b48033)
2008-01-03 10:24:45 +01:00
Jeremy Allison
cc957c7f6d Convert the little caches in util_sock.c to use
the singleton memcache. Vl please check (passes
make valgrindtest).
Jeremy.
(This used to be commit a4d613cde86caf5782c4bfc47122d6ba807990ac)
2008-01-02 17:37:39 -08:00
Jeremy Allison
afc93255d1 Add SMB encryption. Still fixing client decrypt but
negotiation works.
Jeremy.
(This used to be commit d78045601af787731f0737b8627450018902b104)
2007-12-26 17:12:36 -08:00
James Peach
daba3f8b54 Fix connect(2) callers to use correct sockaddr size.
Some systems (eg Mac OSX 10.5) require the length passed to match
the socket address family. This introduces sys_connect() that does
the right thing, and replaces all uses oc connect(2) with sys_connect().

Note that there are some LGPL callers that still call connect(2)
directly.
(This used to be commit e1bfdc17c49da582cdf907e260301ab1946b2ed3)
2007-12-09 13:28:00 -08:00
Jeremy Allison
42cfffae80 Remove next_token - all uses must now be next_token_talloc.
No more temptations to use static length strings.
Jeremy.
(This used to be commit ec003f39369910dee852b7cafb883ddaa321c2de)
2007-12-07 17:32:32 -08:00
Jeremy Allison
dc9237d231 Doh ! Don't use #else when #endif is needed.
Jeremy.
(This used to be commit a04e916b89c901911ffc0a62e57a3ec87fe7ac28)
2007-11-21 10:31:18 -08:00
Jeremy Allison
e68bbe3548 Add set_sockaddr_port function for winbindd.
Jeremy.
(This used to be commit 4b47052694285a1d1d313dfd61bd17011d62948d)
2007-11-21 10:10:52 -08:00
Jeremy Allison
acb829ecc3 Add MAX_DNS_NAME_LENGTH, remove more pstrings.
Jeremy.
(This used to be commit a1725f4ff7ed375808c78ac661b539557748d0a5)
2007-11-15 18:27:26 -08:00
Jeremy Allison
91c1933e67 Remove a pstring.
Jeremy.
(This used to be commit c0412b5d13546f388b615a073e82e7730e01d731)
2007-11-11 21:45:55 -08: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
e501c0cd44 Unify the name and addr cache for client_name to
make threading easier ultimately.
Jeremy.
(This used to be commit 48e0725cd6bb976ca799e6b8464c94aeffb1672b)
2007-11-07 12:48:58 -08:00
Jeremy Allison
36441da424 Remove the horror that was the global smb_rw_error.
Each cli struct has it's own local copy of this variable,
so use that in client code. In the smbd server, add one
static to smbd/proccess.c and use that inside smbd. Fix
a bunch of places where smb_rw_error could be set by
calling read_data() in places where we weren't reading
from the SMB client socket (ie. winbindd).
Jeremy.
(This used to be commit 255c2adf7b6ef30932b5bb9f142ccef4a5d3d0db)
2007-11-05 11:12:56 -08:00
Jeremy Allison
536a9e7922 Don't alloc struct iface_struct nics[MAX_INTERFACES]; (128 entries)
on the stack - use talloc.
Jeremy
(This used to be commit b5e37af251a26648b0e4f59ca548c5374399175e)
2007-11-04 22:20:04 -08:00
Jeremy Allison
6a2a27076f This should really be a cond_set_smb_read_error().
Jeremy.
(This used to be commit 5ab76b58c00dde89b56060482f5cdc5d0c6c56cb)
2007-11-04 22:14:19 -08:00
Jeremy Allison
85ff0b2d75 Don't use 0 when we mean SMB_READ_OK.
Jeremy.
(This used to be commit 08ee4314a9e25700288f4ea1af22ee1732dfea61)
2007-11-04 22:12:31 -08:00
Jeremy Allison
5b0b4f23ef Remove most of the remaining globals out of lib/util_sock.c.
I have a plan for dealing with the remaining..... Watch
this space.
Jeremy.
(This used to be commit 963fc7685212689f02b3adcc05b4273ee5c382d4)
2007-11-03 23:20:10 -07:00
Jeremy Allison
51a0354d75 Remove more static data from lib/util_sock.c and
callers.
Jeremy.
(This used to be commit 35aaa36f82c70964cee5d0778eb04547b226dd3f)
2007-11-03 22:34:46 -07:00
Jeremy Allison
56aa420195 Missed one case where I need to pass down addrlen.
Jeremy
(This used to be commit 62b5ca3334598aec3304d21118f67702afc3854a)
2007-11-03 20:27:59 -07:00
Jeremy Allison
25074433f4 I can't get away without a 'length' arg. :-).
Jeremy.
(This used to be commit 95d01279a5def709d0a5d5ae7224d6286006d120)
2007-11-03 18:41:26 -07:00
Jeremy Allison
6658165d5e Stop get_peer_addr() and client_addr() from using global
statics. Part of my library cleanups.
Jeremy.
(This used to be commit e848506c858bd16706c1d7f6b4b032005512b8ac)
2007-11-03 18:15:45 -07:00
Jeremy Allison
73d4079680 Remove the smb_read_error global variable and replace
it with accessor functions. "One global or pstring a day...." :-).
Jeremy.
(This used to be commit d50d14c300abc83b7015718ec48acc8b3227a273)
2007-11-03 15:12:42 -07:00
Jeremy Allison
a45c91ec6a Ensure we use the correct socklen_t values for bind() for
Solaris.
Jeremy.
(This used to be commit 638579d75a2aa00836dc4c0c772381b775944b16)
2007-11-02 14:22:19 -07:00
Jeremy Allison
e075b3692b Fix Solaris by ensuring we use the IPv4 or IPv6 length
in any getnameinfo calls.
Jeremy
(This used to be commit 4d7badb0c44f287034f58d9a412e662c0fbecdc9)
2007-11-02 10:25:34 -07:00
Jeremy Allison
c3250149e1 Add new parameter, "min receivefile size" (by default set
to zero). If non-zero, writeX calls greater than this
value will be left in the socket buffer for later handling
with recvfile (or userspace equivalent). Definition of
recvfile for your system is left as an exercise for
the reader (I'm working on getting splice working :-).
Jeremy.
(This used to be commit 11c03b75ddbcb6e36b231bb40a1773d1c550621c)
2007-10-30 16:22:24 -07:00
Jeremy Allison
d4307679b9 Change all occurrences of zero_addr(&ss,AF_INET) to
zero_addr(&ss). All current uses were always of the
AF_INET form, so simplify the call. If in the future
we need to zero an addr to AF_INET6 this can be
done separately.
Jeremy.
(This used to be commit 2e92418a138bf2738b77b7e0fcb2fa37ad84fc0c)
2007-10-27 20:29:36 -07:00
Jeremy Allison
fc91aa6988 Move the horrible hack for link local addresses out of namequery.c
and into util_sock.c. is_ipaddress() now copes with link:local:v6%ifname
addresses, as does interpret_string_addr().
Jeremy
(This used to be commit a3f7db3d30ced566c8340696914f1be3293a9c5b)
2007-10-26 16:03:20 -07:00
Jeremy Allison
e054affb7b Fix bug in writing names into gencache
as well as 2 typos where AF_INET6 was mistypes as AF_INET.
JERRY YOU NEED THESE FIXES.
Fixes smbclient -L localhost -U%
Bugs reported by Kukks (thanks kukks).
Jeremy.
(This used to be commit f109f82622ca30ae2360e8300152e90b9587ffd8)
2007-10-25 19:07:25 -07:00
Jeremy Allison
6128d116b3 Fix resolve name to resolve IPv6 addresses of link-local%ifaddr
Jeremy.
(This used to be commit e6609cab732d5cd5cc9a5ae50aee15147f2ec6ec)
2007-10-25 18:28:36 -07:00
Jeremy Allison
d58398bd23 When doing reverse lookups actually look up the name, not
just the numeric address (doh!) :-).
Jeremy.
(This used to be commit 9aa9ecd8cc29d055d78f16b8fb2156ec04063c42)
2007-10-25 16:14:52 -07: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
Gerald (Jerry) Carter
80b7bcb5fb Add test for "struct in6_addr" to the HAVE_IPV6 configure test.
Also make use of "if defined(HAVE_IPV6)" rather than testing for
AF_INET6 since this is not sufficient on HP-UX 11.11 to ensure
a working IPv6 implementation.
(This used to be commit 620785df4e57b72471ff0315e22e0d2f28a2b1a5)
2007-10-19 13:09:26 -07:00
Jeremy Allison
666f50b01f Move to protocol independent code in most of lib/util_sock.c
We don't use gethostbyname any more except in one case where
we're looking for host aliases (I don't know how to do that
with getaddrinfo yet). New function should be getaddrinfo().
Next step will be fixing lib/access.c, and then changing
libsmb/namequery.c to cope with IPv6 address returns.
Jeremy.
(This used to be commit 4a56b697b6adcf095e25895c4a9ba3192ed34124)
2007-10-15 16:11:48 -07:00
Jeremy Allison
6c8225445b Dummy formatting commit to check I've set up my home git
correctly.
(This used to be commit a1166e9e651f4acdcf7926c5d8e9cf0c9108fe71)
2007-10-12 21:50:41 -07:00
Jeremy Allison
e9cf3a8ca2 Convert get_peer_addr() to IPv6. Only is_myname_or_ipaddr()
lefto to do then I can fix the lib/access.c functions.
Jeremy.
(This used to be commit 3403c6c330b886c86d6d856c3ffc13b043fd6fc1)
2007-10-12 13:38:04 -07:00
Jeremy Allison
cb5436bcc3 Add const to the get_peer_addr() and get_socket_addr()
calls. Use the IPv6 varient for get_peer_addr().
Jeremy.
(This used to be commit baf1f52e34ae2465a7a34be1065da29ed97e7bea)
2007-10-11 15:36:13 -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