History log of /haiku/src/kits/network/
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
60a6f1d5 23-Jul-2020 Emir SARI <bitigchi@me.com>

Set Noto Sans Mono as monospace default font

Should help improve [1].

[1]: https://github.com/haikuports/haikuports/issues/3116

Change-Id: I29dd94e3380c3a5935d47d97e2a2ac1c5fb7e774
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3070
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>

7bac04e6 16-Jul-2020 Leorize <leorize+oss@disroot.org>

HttpRequest: Don't wait for socket to be readable

The socket is a blocking one, which means Read() will block unless data
is available, thus WaitForReadable() is useless in this context.

Testing also shows a 2x performance increase from removing this call due
to poll() performance being botched when KDEBUG_LEVEL >= 2.

Change-Id: I3170f865e961112b420c1548726bb6fd38e94cb2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3078
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

846c12f5 15-Jul-2020 Leorize <leorize+oss@disroot.org>

HttpRequest: Use an ArrayDeleter to manage the temporary buffer

This make sure that the temporary buffer will always be deleted should
any premature return happens.

Change-Id: I448ec7c3f3eeca1ef2b6473b49323f34bcb7bf86
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3077
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

0d0f613f 15-Jul-2020 Leorize <leorize+oss@disroot.org>

GopherRequest: Don't wait for socket to be readable

Instead we can trigger a Read() immediately, as our socket is blocking
and won't return until some data has been made available. This avoids a
potentially costly syscall in the loop body.

Change-Id: I899f55ede41af7cb7e9311aa04006b33c40d3ee4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3076
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

d64d305c 15-Jul-2020 Leorize <leorize+oss@disroot.org>

GopherRequest: Accurate progress reports and listener bugfixes

This commit brings the following changes:
- DownloadProgress() should now be reported for every DataReceived()
calls, similar to other BUrlRequest classes.
- Properly verify whether a listener has been set before invoking them.

Change-Id: I4ded82e318ba580b8869c3d1751da4e36882c39f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3075
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

2056d60f 15-Jul-2020 Leorize <leorize+oss@disroot.org>

DataRequest: Use ArrayDeleter to manage the temporary buffer

This simplify the clean up code path and make sure that the temporary
buffer will always be freed on exit.

Change-Id: I70c1a25bfa66c4f4a96dd3d0af3765a67e305fb2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3074
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

e1de8e8c 15-Jul-2020 Leorize <leorize+oss@disroot.org>

DataRequest: More consistent progress report

Trigger DownloadProgress after DataReceived, similar to how other BUrlRequest
classes behave.

Change-Id: I4858c3736b1b1ebec55af9903dbfd4b976a77df3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3073
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

9e404c53 15-Jul-2020 Leorize <leorize+oss@disroot.org>

FileRequest: More consistent progress reporting

Make BFileRequest reports download progress after every DataReceived()
calls.

DownloadProgress() format has also been changed to use 0 as
`bytesTotal` when the total size is unknown. This is similar to
BHttpRequest functions currently.

Change-Id: I2920ea00c4f841bb666425be6f8da418e913c727
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3072
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

1f569db0 15-Jul-2020 Leorize <leorize+oss@disroot.org>

FileRequest: Make Stop() cancel the request as soon as possible

This commit implements a check for the flag raised by Stop() to cancel
a given request as soon as possible. Cancelled requests will return
B_INTERRUPTED regardless of whether the request has completed,
on par with how BHttpRequest is behaving at the moment.

Change-Id: Ia8a95b910cff158c710c5b2ed58b4675e705642e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3071
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

6b3cfabf 24-Jun-2020 Murai Takashi <tmurai01@gmail.com>

libnetapi: Fix if condition

Fix length[0] != '+' could not be checked.
Pointed out by cppcheck.

Change-Id: Ic4697dc9ffd04afcd92ef3ed65485e1fe3f32e76
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2950
Reviewed-by: leorize <leorize+oss@disroot.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

5f9ca54d 20-Jun-2020 Augustin Cavalier <waddlesplash@gmail.com>

BHttpResult: Include errno.h.

d345666e 17-Jun-2020 Leorize <leorize+oss@disroot.org>

libnetapi/HttpResult: improve Length() algorithm

`atoi()` maximum value is `LONG_MAX` which is smaller than `SIZE_MAX`.
This cause any Content-Length > LONG_MAX to be represented in an
erroneous value. This will also happen to any invalid Content-Length
header.

This change uses strtoul() for the extended range (should be the same as
size_t range), and combined with proper error checking to determine
whether the received Content-Length is a valid and/or representable
value. Returns 0 if the data is invalid or can not be represented.

Some shortcomings about the current implementation are also
noted accordingly. They will be solved in later patches.

Change-Id: If28c4c3b8430ed83dd0f600030ec8949cf7e0051
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2927
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

6b0e92eb 31-May-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

libshared: move md5 to BPrivate namespace

Otherwise it clashes with the implementation in OpenSSL which uses the
same names but now has a different ABI.

Change-Id: I5cb3ff97d7b28de978cdcbd8a06f25f65fb53784
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2854
Reviewed-by: Kyle Ambroff-Kao <kyle@ambroffkao.com>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>

38963e75 27-May-2020 Kyle Ambroff-Kao <kyle@ambroffkao.com>

SecureSocket: Handle interrupted reads and writes

If a system call performed by SSL_read is interrupted by a signal, it
seems to set its error to SSL_ERROR_WANT_READ. This triggers logic
added in hrev53853 which assumes the caller is doing async reads and
returns B_WOULD_BLOCK.

This breaks uses of BSecureSocket that do blocking reads.

* Detect interrupted signal by checking for EINTR in errno.
* Adding this retry loop to BScureSocket::Write as well since it can
have the same problem.

Resolves issue #15853.

Change-Id: I8198a8496fa3a2ccee00bda87375a482a0d4ba3d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2825
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>

d9ef4f90 17-May-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Remove GPL-licensed implementation of MD5

APE reader was using a GPL licensed version of MD5. A similar
implementation in the public domain was available in libnetapi, which I
moved to libshared so the APE reader can use it (and made some fixes,
missing const mainly). It only needs a small wrapper to use it easily
from C++ in a way compatible with the previous implementation.

Part of #13814.

b8aadcd2 19-Apr-2020 Augustin Cavalier <waddlesplash@gmail.com>

libnetapi: Adapt to OpenSSL 1.1 API changes.

Surprisingly easy: X509 was made opaque, and SSL_CTX_set_ecdh_auto
was removed (it is now the default internally.)

fedaf766 10-Apr-2020 Jérôme Duval <jerome.duval@gmail.com>

HttpRequest: fix gcc2 build after f4fce2fd2e81039b247b2fee90a69a98490742ca

f4fce2fd 07-Apr-2020 X512 <danger_mail@list.ru>

HttpRequest: use off_t for reply content size

Fixes #15850.

Change-Id: Ic5d64ecba92306cbe798c94ac8e4a7626125e09b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2464
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>

0e280da5 08-Feb-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

SecureSocket: fix non-blocking reads

OpenSSL says we should retry when a non-blocking read finds no data is
pending. But in that case we should not retry immediately, because the
operation should be non-blocking.

8769583f 03-Feb-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Build fix.

3bea15ad 03-Feb-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

BSecureSocket: retry reads after interrupted syscalls.

SSL_AUTO_RETRY does not cover this case (it only covers SSL errors, not
underlying socket ones), so we still need to retry reads manually here.

Fixes #14638.

04a1ee97 21-Sep-2019 Murai Takashi <tmurai01@gmail.com>

libnetapi: Fix 'new[]' array freed with 'delete'

sMutexBuf is allocated by new[] in SSL::SSL(), but freed by delete.
Pointed by LGTM.

Change-Id: Ic16501883be4e3b7ca5fe24e1585b6e14ae3ff36
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1883
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>

a830ec9a 23-Aug-2019 Augustin Cavalier <waddlesplash@gmail.com>

BSecureSocket: Don't continue with an untrusted certificate by default.

It has been multiple years since this comment was written; all relevant
apps have added their own hooks around this, so we should now be
"secure by default."

Also spotted by a random Hacker News commenter.

8d63a906 23-Aug-2019 Augustin Cavalier <waddlesplash@gmail.com>

BSecureSocket: Pass the hostname to the X509 layer to validate it.

Now SSL certificates with the wrong hostname actually fail to validate.
While I'm at it, remove the usage of BString and just check [0] directly.

Spotted by a random commenter on Hacker News.

49506076 19-Jul-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

Add a features.h to auto enable _DEFAULT_SOURCE

Unless __STRICT_ANSI__ is defined (as it is when running the compiler in
--std=c89 or --std=c99, but not when running it without any specific
args), we can enable these by default and behave like most other
systems. I don't know why no one has done this yet despite suggesting it
multiple times and people prefer to #define _BSD_SOURCE manually
everywhere.

Remove all places in our Jamfiles and sources where it had been defined.
_DEFAULT_SOURCE is now enabled by default for all sources of Haiku, since we
let the compiler use GNU extensions (no strict C standard specified on
command line)

Use _DEFAULT_SOURCE as the define name to match current versions of
glibc. Enable it if _BSD_SOURCE is #defined in compiler flags, for
backward compatibility.

Change-Id: I6db04da5f6db437723cdfba3478f5094a69d7727
Reviewed-on: https://review.haiku-os.org/c/1633
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>

fc8e5be1 14-Feb-2019 Augustin Cavalier <waddlesplash@gmail.com>

HashMap: Fix the build with GCC 7.

de48af7a 14-Feb-2019 Augustin Cavalier <waddlesplash@gmail.com>

Adapt all consumers of HashSet and HashMap to the slightly-different APIs.

No functional changes intended. Tested and verified as working.

Change-Id: Iaa67c2e5f0d9aff433ac7348e63e901a6a80e589
Reviewed-on: https://review.haiku-os.org/c/1043
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

d65ffc92 02-Feb-2019 Augustin Cavalier <waddlesplash@gmail.com>

libnetapi: Remove __gNetAPIStart.

Not used by anything.

67ef9f72 01-Feb-2019 Augustin Cavalier <waddlesplash@gmail.com>

network: Utilize image_id argument to initialize_before.

We don't need to search for our own image_id, we already have it now,
so just use it.

c5e4e4ff 01-Feb-2019 Augustin Cavalier <waddlesplash@gmail.com>

headers/kernel: Include declarations of initialization functions in image.h.

No "real" functional change, but this causes GCC7 to throw errors when
these functions are declared without the image_id argument, which
in some files they were (as this commit repairs.)

This change is largely inconsequential on x86, but on callee-cleanup-args
targets, leaving out the argument would probably cause stack corruption.

20312cfe 27-Jan-2019 Adrien Destugues <pulkomandy@gmail.com>

BSecureSocket: cleanup, no functional changes

Change-Id: I3355067efe4c5d71f8656d244e17bb11175600eb
Reviewed-on: https://review.haiku-os.org/c/910
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

1322d507 27-Jan-2019 Adrien Destugues <pulkomandy@gmail.com>

HttpRequest: write whole request to socket

Better performance by using a single write, and some servers may not be
happy about getting so many TCP fragments for the HTTP header.

Change-Id: If7139e2a7748ea423d470676e70bd523a89031b2
Reviewed-on: https://review.haiku-os.org/c/909
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

753c7e08 05-Jan-2019 Augustin Cavalier <waddlesplash@gmail.com>

freebsd11_wlan -> freebsd_wlan.

FreeBSD 12's net80211 layer contains only 2 small KPI breaks from FreeBSD 11,
so we can upgrade it, apply those 2 changes to the drivers which are affected
(as the changes are in some lesser-used functions), and then upgrade all drivers
one at a time.

dba28784 24-Dec-2018 Augustin Cavalier <waddlesplash@gmail.com>

freebsd11_network -> freebsd_network.

FreeBSD 12 has no major changes to the ifnet KPIs that constitute a
source compatibility break, save a single one related to locking
which doesn't really apply to us, and so we don't need to create
a "freebsd12_network" directory to work through the upgrades.

aa6411e2 23-Nov-2018 Augustin Cavalier <waddlesplash@gmail.com>

libnetwork: Move from src/kits to src/system.

Properly speaking, this is part of POSIX and not of the Be-style
"kits", and so it should live in system/ alongside libroot.
No functional change intended.

Change-Id: I0fcf78a09c76e220ad4f1719d147978ef4a3bc52
Reviewed-on: https://review.haiku-os.org/726
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


Jamfile
gethostbyname.c
getifaddrs.cpp
init.cpp
interfaces.cpp
netresolv/COPYRIGHT
netresolv/Jamfile
netresolv/config.h
netresolv/defaults/services
netresolv/dst/dst_api.c
netresolv/dst/dst_internal.h
netresolv/dst/hmac_link.c
netresolv/dst/md5.h
netresolv/dst/md5_dgst.c
netresolv/dst/md5_locl.h
netresolv/dst/support.c
netresolv/include/fd_setsize.h
netresolv/include/hesiod.h
netresolv/include/irp.h
netresolv/include/irs.h
netresolv/include/isc/assertions.h
netresolv/include/isc/ctl.h
netresolv/include/isc/dst.h
netresolv/include/isc/eventlib.h
netresolv/include/isc/heap.h
netresolv/include/isc/irpmarshall.h
netresolv/include/isc/list.h
netresolv/include/isc/logging.h
netresolv/include/isc/memcluster.h
netresolv/include/isc/misc.h
netresolv/include/isc/platform.h
netresolv/include/isc/platform.h.in
netresolv/include/isc/tree.h
netresolv/include/netgroup.h
netresolv/include/nsswitch.h
netresolv/include/res_update.h
netresolv/include/resolv_mt.h
netresolv/include/sys/bitypes.h
netresolv/include/utmp.h
netresolv/inet/inet_addr.c
netresolv/inet/inet_cidr_ntop.c
netresolv/inet/inet_cidr_pton.c
netresolv/inet/inet_lnaof.c
netresolv/inet/inet_makeaddr.c
netresolv/inet/inet_net_ntop.c
netresolv/inet/inet_net_pton.c
netresolv/inet/inet_neta.c
netresolv/inet/inet_netof.c
netresolv/inet/inet_network.c
netresolv/inet/inet_ntoa.c
netresolv/inet/inet_ntop.c
netresolv/inet/inet_pton.c
netresolv/inet/nsap_addr.c
netresolv/irs/base64.c
netresolv/irs/getaddrinfo.c
netresolv/irs/gethnamaddr.c
netresolv/irs/getnameinfo.c
netresolv/irs/getnetent.c
netresolv/irs/getnetnamadr.c
netresolv/irs/getprotobyname.c
netresolv/irs/getprotobyname_r.c
netresolv/irs/getprotobynumber.c
netresolv/irs/getprotobynumber_r.c
netresolv/irs/getprotoent.c
netresolv/irs/getprotoent_r.c
netresolv/irs/getservbyname.c
netresolv/irs/getservbyname_r.c
netresolv/irs/getservbyport.c
netresolv/irs/getservbyport_r.c
netresolv/irs/getservent.c
netresolv/irs/getservent_r.c
netresolv/irs/hesiod.c
netresolv/irs/lcl_sv.cpp
netresolv/irs/nsdispatch.c
netresolv/irs/nslexer.l
netresolv/irs/nsparser.y
netresolv/irs/protoent.h
netresolv/irs/servent.h
netresolv/irs/sethostent.c
netresolv/irs/vars6.c
netresolv/isc/assertions.c
netresolv/isc/assertions.mdoc
netresolv/isc/bitncmp.c
netresolv/isc/bitncmp.mdoc
netresolv/isc/ctl_clnt.c
netresolv/isc/ctl_p.c
netresolv/isc/ctl_p.h
netresolv/isc/ctl_srvr.c
netresolv/isc/ev_connects.c
netresolv/isc/ev_files.c
netresolv/isc/ev_streams.c
netresolv/isc/ev_timers.c
netresolv/isc/ev_waits.c
netresolv/isc/eventlib.c
netresolv/isc/eventlib.mdoc
netresolv/isc/eventlib_p.h
netresolv/isc/heap.c
netresolv/isc/heap.mdoc
netresolv/isc/hex.c
netresolv/isc/logging.c
netresolv/isc/logging.mdoc
netresolv/isc/logging_p.h
netresolv/isc/memcluster.c
netresolv/isc/memcluster.mdoc
netresolv/isc/movefile.c
netresolv/isc/tree.c
netresolv/isc/tree.mdoc
netresolv/nameser/ns_name.c
netresolv/nameser/ns_netint.c
netresolv/nameser/ns_parse.c
netresolv/nameser/ns_print.c
netresolv/nameser/ns_samedomain.c
netresolv/nameser/ns_ttl.c
netresolv/port_after.h
netresolv/port_before.h
netresolv/resolv/h_errno.c
netresolv/resolv/herror.c
netresolv/resolv/mtctxres.c
netresolv/resolv/res_comp.c
netresolv/resolv/res_data.c
netresolv/resolv/res_debug.c
netresolv/resolv/res_debug.h
netresolv/resolv/res_init.c
netresolv/resolv/res_mkquery.c
netresolv/resolv/res_private.h
netresolv/resolv/res_query.c
netresolv/resolv/res_send.c
netresolv/resolv/res_state.c
r5_compatibility.cpp
socket.cpp
043b00fb 13-Sep-2018 Augustin Cavalier <waddlesplash@gmail.com>

BNetworkDevice: Fix memory leaks and address comments.

Thanks Axel and Jerome for the reviews!

Change-Id: I4f116c540cf59ba74b79d9d2f95ed40edc9c4174
Reviewed-on: https://review.haiku-os.org/557
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

4e5aaaa7 12-Sep-2018 Augustin Cavalier <waddlesplash@gmail.com>

BNetworkDevice: Implement Scan().

This depends on the previous commit to return the correct error code
from ioctl().

If there are no VAPs running (which is the case after a forced disconnect
from an access point), scans will fail. In that case, we call
IEEE80211_IOC_HAIKU_COMPAT_WLAN_UP, which will restart a VAP, and then
initiate the scan.

Change-Id: I732aefe67e386dbb0ed3d232ed9deda678132601
Reviewed-on: https://review.haiku-os.org/551
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

44cff45d 20-Aug-2018 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: chunk length are in hex

Thanks to mmlr for spotting this. The wrong format specifier was used,
which would lead the server to get the wrong size and do strange things.

Chunked uploads should now work a lot better.

While I was at it, put the line termination in the printf to save a
write to the socket (these are unbuffered and each of them costs us a
syscall, and in some cases this has been found to confuse webservers as
we end up sending super small TCP packets).

3a50df1b 01-Aug-2018 Murai Takashi <tmurai01@gmail.com>

Network kit: Fix -Wformat-overflow

Increase array size, since gcc8 x86_64 warns 'sprintf' output
between 2 and 20 bytes into a destination of size 16
[-Werror=format-overflow=].

Change-Id: I641db97d963b64b0c3434cd498f29f4dcb61c373
Reviewed-on: https://review.haiku-os.org/472
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

00cbe4cc 08-Aug-2018 Murai Takashi <tmurai01@gmail.com>

Replace strncpy with strlcpy

Since destination size equals number of characters to copy.
Pointed out by gcc8. [-Werror=stringop-truncation]

Change-Id: I8f2118129ec2324bb1f93857f5abfdf121c864f0
Reviewed-on: https://review.haiku-os.org/450
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: Skipp_OSX <jscipione@gmail.com>

9a90ee3a 02-Aug-2018 Jérôme Duval <jerome.duval@gmail.com>

Revert "Switch default fixed font from NotoMono to NotoSansMono"

This reverts commit b2acee1cb986b696adfad7daabfe9279949a3e54.

Reason: NotoSansMono is not per se a fixed font.

b2acee1c 25-Nov-2017 Humdinger <humdingerb@gmail.com>

Switch default fixed font from NotoMono to NotoSansMono

Change-Id: Ib9eab5a2e266393b234cf7f4a6934fd58e31c943
Reviewed-on: https://review.haiku-os.org/48
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>

a31d07a2 01-Aug-2018 Augustin Cavalier <waddlesplash@gmail.com>

libnetapi: Fix style issues in previous commit.

0dc3ab4f 01-Aug-2018 Augustin Cavalier <waddlesplash@gmail.com>

libnetapi: Do not use the freebsd11_network headers globally.

Since they were being Use'd at global scope, the FreeBSD versions
of a number of POSIX headers were being used instead of the POSIX ones,
which breaks the build on non-x86 as these headers presently do not work
elsewhere.

Instead, just include the base directory, and then include the compat
headers manually in the one place that actually requires them.
Also fix all the other files that expected errno.h and others to
be included implicitly, which they now are not.

This should fix the PowerPC and (part of the) ARM builds.

b3b69f81 01-Aug-2018 Augustin Cavalier <waddlesplash@gmail.com>

netresolv: Merge a patch to getaddrinfo from NetBSD.

This block was originally disabled in libbind, and we enabled it
independently; and so did NetBSD. But they also made one other
fix:

From: christos <christos@netbsd.org>
Date: Thu, 28 Dec 2017 15:12:15 +0000
Subject: [PATCH] PR/52837: Michael Kaufmann: getaddrinfo() resolves "127.0.0.1
www.example.com" to 127.0.0.1. Apply the patch from FreeBSD and explain the
rationale.

c9431a67 01-Aug-2018 Augustin Cavalier <waddlesplash@gmail.com>

netresolv: Mark code changes with __HAIKU__.

I attempted to merge NetBSD's new irs code, but their changes turned
out to be too invasive to do trivially, but in the process I had to
read our commit logs to find what we've changed, so at least I can
mark that.

4cc9ce9d 31-Jul-2018 Augustin Cavalier <waddlesplash@gmail.com>

netresolv: Merge patches from 2017 to current HEAD.

Commits merged from the semi-official Git mirror of NetBSD
trunk (https://github.com/IIJ-NetBSD/netbsd-src/).

Commit authors/messages in chronological order follow:
---------------------------------------
From: christos <christos@netbsd.org>
Date: Thu, 28 Sep 2017 23:32:01 +0000
Subject: [PATCH] PR/52578: Benjamin M. Schwartz Set the AD bit when DNSSEC is
enabled (RFC 6840 Section 5.7).

From: lukem <lukem@netbsd.org>
Date: Fri, 2 Mar 2018 06:31:53 +0000
Subject: [PATCH] PR/48585: Set errno when returning NULL for AF_INET
In inet_ntop4(), errno wasn't set before returning NULL.
Seems like an oversight in the existing fix for PR/48585.
Noticed by code inspection.

1e29bfd7 18-Jul-2018 Augustin Cavalier <waddlesplash@gmail.com>

Update all remaining consumers of the FreeBSD compat headers.

7dba237f 05-May-2018 Adrien Destugues <pulkomandy@pulkomandy.tk>

BSecureSocket: re-enable RSA cipher suite

my.justenergy.com allows only RSA, so we can't connect there without
this. Other websites may have a similar problem.

Also improve the handling of the error, as it was giving a generic
"general system error" to the user.

Fixes #13975.

43e75989 30-Jan-2018 Jérôme Duval <jerome.duval@gmail.com>

libnetwork: link against the arch specific libbsd and libutil.

197c6599 19-Dec-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

libnetwork: re-introduce gethostbyname_r and gethostbyaddr_r

These are needed by existing openjdk package. Let's keep them until we
get the OpenJDK build working again and can remove the requirement.

a9020afc 29-Nov-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

BHttpHeaders: fix gcc5 build.

ed8f28a4 26-Nov-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

Move HeadersReceived hook after parsing of cookies

I still don't get what's happening, but doing the cookie parsing at the
same time as the main thread is handling HeadersReceived seems to
trigger a memory corruption, and it will escape all my attempts to debug
it (adding printfs or any other slight change to the code will make it
go away). So just chage the order we do things and hope that's enough to
always avoid it.

As a side effect, HeadersReceived can now rely on the cookies being
already stored in the cookie jar, which I think makes more sense.

I still plan to rewrite the HTTP request code as a proper state machine,
instead of one long Run() function. This would allow to run it in
smaller steps, and thus group multiple requests in a single thread
(triggering them from poll, select, or similar).

71312468 23-Nov-2017 Augustin Cavalier <waddlesplash@gmail.com>

BNetworkAddress: Close socket in ResolveForDestination.

It was closed on all the failure cases but not on the success one.
Found by Coverity.

75fa008e 23-Nov-2017 Augustin Cavalier <waddlesplash@gmail.com>

BProxySecureSocket: Fix obviously untested code.

* Actually set status before testing it
* sscanf (reads from passed buffer) not scanf (reads from stdin)
* &httpStatus not httpStatus.

Found by Coverity.

b140a1c3 21-Nov-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

NetworkAddressResolver: cache needs to be locked

It is not a good idea to have a thread get an address from the request
cache, while another thread is deleting said address as the cache has
grown too large. Add a lock around the cache access to make it safe.

d1805b9a 20-Nov-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

BSecureSocket: use opt-out to select ciphersuites.

We just want to disable known broken ones, rather than opt-in for
working ones. This keeps the list of authentications shorter and is more
future proof.

e1ca6769 26-Oct-2017 Jérôme Duval <jerome.duval@gmail.com>

libbnetapi: style fixes only.

f40841ac 28-Jul-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

BNetworkRequest: fix _GetLine on empty lines.

On an empty line terminated by \n, we would access the temporary buffer
(stack allocated) with an index of (uint32)-1. On 32bit machine this
would just read the byte before the array on the stack, but on 64bit it
would crash.

Check that the length is at least 1 before trying to access a character
in the array.

Fixes #13625.

Thanks to accessays for proofreading the code:

615ef07d 25-Jul-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

libnetapi: missing NULL check.

9175f4f0 02-Jul-2017 Augustin Cavalier <waddlesplash@gmail.com>

netresolv: Merge patches from 2015 to current HEAD.

Commits merged from the semi-official Git mirror of NetBSD
trunk (https://github.com/IIJ-NetBSD/netbsd-src/).

Commit authors/messages in chronological order follow:
---------------------------------------
From: maya <maya@netbsd.org>
Date: Tue, 9 May 2017 02:56:44 +0000
Subject: Avoid shift of negative signed integer. this is UB. NFC.

5721d179 03-Jun-2017 Mark Hellegers <mark@firedisk.net>

BHttpTime: Handle sunday properly

Cookies with expiration on a sunday would be misformatted, which could
lead to websites not recognizing them.

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

Fixes 13543

e62e979e 03-May-2017 François Revol <revol@free.fr>

Allow dumping SSL session keys on TRACE_SESSION_KEY

This dumps SSL session keys to a log file specified by the
SSLKEYLOGFILE environment variable.

This permits decrypting SSL trafic in wireshark with a tcpdump
capture for example.
cf.
https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/Key_Log_Format
https://security.stackexchange.com/questions/35639/decrypting-tls-in-wireshark-when-using-dhe-rsa-ciphersuites/42350#42350
https://wiki.wireshark.org/SSL#Using_the_.28Pre.29-Master-Secret
https://jimshaver.net/2015/02/11/decrypting-tls-browser-traffic-with-wireshark-the-easy-way/

Looks like we miss the required function from SSL...
SSL_SESSION_print_keylog is only in 1.1.0.
Also added dumping of client_random as it's required by wireshark.

315633e1 18-Apr-2017 A-star-ayush <myselfthebest@yahoo.com>

getaddrinfo now accepts shorthand ipv4 notation

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

As required by POSIX:
"If the specified address family is AF_INET or AF_UNSPEC, address
strings using Internet standard dot notation as specified in inet_addr
are valid." (which allows IP in a.b.c.d, a.b.c, a.b, and a forms, and
also accepts the numbers in hex and octal).

Fixes #3884.

7abafe9f 18-Feb-2017 Augustin Cavalier <waddlesplash@gmail.com>

Revert "Revert "Switch from DejaVu to Noto font""

This reverts commit 2423ba84701f064cb78a40010113a8a45cc02a92.

2423ba84 18-Feb-2017 Augustin Cavalier <waddlesplash@gmail.com>

Revert "Switch from DejaVu to Noto font"

This reverts commit 945566ff43583e4f8102b4440c88f53dae775cb4.

As discussed on the mailing lists and with Humdinger off-list:
* The general design concensus tends slightly towards DejaVu, as metrics
of DejaVu look much better (DejaVu 12 and Noto 13 are roughly the same size,
but Noto has much wider margins with that)
* While Noto does have a wider set of fonts with support for lots of
different languages, DejaVu actually has built-in support for more
Unicode languages (the default Noto has, as far as I can tell, only
Latin/Greek/Cyrillic [2416 glyphs], while DejaVu also has Armenian, Georgian,
and a few other scripts too [5119 glyphs].)
* The worse rendering of DejaVu appears to have been somewhat rectified by
disabling the average-based subpixel filter in app_server.

83be289d 11-Feb-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

netresolv: Remove rcsid

fixes gcc6 complaining about unused global variable.

7407e36a 31-Jan-2017 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot; date formatting and location header handling

The existing HTTP header date format handling code is employed
rather than using specific logic for HD. Also the "Location"
header handling is changed to work better for non-absolute
URLs arriving in this header value on a redirect. Both
suggestions from Adrien.

f9e1854f 29-Jan-2017 Adrien Destugues <pulkomandy@gmail.com>

libbnetapi: fix access to HTTP headers

The asynchronous listener had no reliable way to access HTTP result and
headers from the callbacks. As the callbacks are triggered
asynchronously, they can be run after the request has carried on and,
for example, followed an HTTP redirect, clearing its internal state.

The HeadersReceived callback now passes a reference to BUrlResult for
the request. There are two cases:
- Synchronous listener: passes a reference to the request's results
directly
- Asynchronous listener: archives a copy of the result into the
notification message, and passes a reference to the unarchived copy.

Unfortunately this comes with several ABI and API breakages:
- Change to the prototype of HeadersReceived()
- Change to the class hierarchy of BUrlResult (implements BArchivable)

All users of HTTP requests will need to be updated if they implemented
in HeadersReceived or used BUrlResult.

ab880b17 29-Jan-2017 Adrien Destugues <pulkomandy@gmail.com>

Cookie Jar: fix lock order inversion

The main lock on the cookie jar must always be locked before the rwlocks
for each domain list. This was reversed in one place, leading to a
typical deadlock pattern. Fixes one case of freeze in WebPositive: two
request threads whould interlock, and then anything trying to access the
cookie jar (including the main thread of Web+ to handle javascript
access to cookies) would also lock.

2c26ad4b 29-Dec-2016 Adrien Destugues <pulkomandy@gmail.com>

move BUrl to the support kit

It is used by the media kit, which created a dependency from libmedia to
libbnetapi to openssl.
It is not entirely specific to the network kit, there are some use cases
that don't involve network at all.

945566ff 27-Nov-2016 Humdinger <humdingerb@gmail.com>

Switch from DejaVu to Noto font

As discussed, Noto renders much better with freetype 2.7 [1].
The DejaVu package is still in the HaikuPorts repo and can be installed
manually just like all the other available fonts.

[1] http://www.freelists.org/post/haiku-development/freetype-update-from-265-to-27

f4db7fdc 04-Nov-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

BUrl: allow URLs without protocol or authority again.

Parsing an URL can never fail. The regexp is designed to match any
input. In the worst case, everything will end up in the "path"
component. WebPositive relies on this to generate file URLs from a plain
path.

URLs without a protocol are also possible, and can be used with an
implicit protocol. A typical example is network shares sometimes noted in
"//host.domain/path/file" form.

Add tests for these two cases and fix the parser to behave as expected.

ed31589c 31-Oct-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

URL Disaptching/Async listeners: forward debug messages

This makes it possible for the Asynchronous listener to get the
messages. It can then process them in a more fancy way.

The default implementation will still log the messages to the console
(if debug is enabled), but it will do so from the Async listener for
asynchronous requests now. This means they will probably be logged from
the same thread, and show up in a more readable way.

This also makes it possible to listen to several requests and log them
in a nice way (in a status window or whatever).

ed6d3d88 31-Oct-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

SecureSocket: add code to trace SSL events.

Under a #define TRACE_SSL, should you need it.

Also load error strings when initializing the SSL context, so we get
human readable errors from SSL (also in the ser reported ones).

a9665fc6 31-Oct-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: use data from the input buffer first

The HttpRequest protocol loop is designed using an input buffer storing
data from the socket. At each loop, we try to parse some of the data,
and then read more from the socket.

However, in some cases (in particular with chunks, which we parse only
one at a time in a loop iteration), we may not use all the data from the
buffer. Eventually, we will be left with an "empty" socket (nothing to
read from there) but the request not completed because there is still
data in the input buffer.

In that case, we would hang waiting for a read on the socket, instead of
processing data from the input buffer.

Change the code to read from the socket only if a loop iteration did not
manage to read anything from the input buffer. This means the input
buffer is too small for the next thing to process (it contains less than
one line of data, for example), and in that case we can safely read from
the socket without being blocked.

This should fix several cases where the network code was stuck doing
nothing, including https://my.justenergy.com/ reported in #13010.

cf657294 13-Oct-2016 Andrew Lindesay <apl@lindesay.co.nz>

Url: implement same URL parsing logic in C/C++ code

- Remove uses of group matching regular expression, not available on all
build hosts,
- Parsing is faster than our old regexp engine.

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

- Fixes #13002
- Fixed some indentation (tabs vs space), please configure your editor
properly.

f004acb0 31-Oct-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpDate: fix parsing of 2-digit year dates.

Fixes #13043.
Added the affected cookies to the testsuite to avoid future regressions.

cec123b4 30-Oct-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

More fixes to the cookie parser.

- Fix parsing of strings shorter than 24 bytes (which can only happen if
the year has only 3 digits, or the day in month, hour, minute or
seconds have only 1).
- Only allow the GMT and UTC timezone specifiers, as all HTTP dates
should use the GMT zone (but still use a format that allows specifying
a timezone name).

All cookie tests are now passing.

2215451b 30-Oct-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

BNetworkCookie: fix overflow in date computation.

Fix one of the two failing tests from the cookie testsuite.

a61218b1 30-Oct-2016 Mark Hellegers <mark@firedisk.net>

Fix #13042: Make sure all cookies are saved

2c9528d2 27-Sep-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

BNetEndpoint: improve timeout handling

Based on a patch by Duggan.

A timeout of 0 means "no timeout". Avoid an overflow case. Translate
B_INFINITE_TIMEOUT to a NULL timeout for select().

Fixes #7870

69808176 27-Aug-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

Remove pthread.h include from netdb.h

- It is not needed in the .h, and makes gawk build fail.

e43cfe78 21-Aug-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

netresolv: Remove or disable unused variables

Fixes #12746.

e0a322db 26-Jul-2016 François Revol <revol@free.fr>

netresolv: remove asserts from inet_pton()

There are still asserts in inet_pton4 and 6 anyway.

libgit2's tests expect inet_pton() to fail with EAFNOSUPPORT on unsupported
address families instead of crashing...

00a3a794 16-Jul-2016 Augustin Cavalier <waddlesplash@gmail.com>

BSecureSocket: Let OpenSSL choose the most appropriate D-H curve.

b515f3b4 16-Jul-2016 Augustin Cavalier <waddlesplash@gmail.com>

BSecureSocket: Print SSL error message as well as the error code.

Helps with debugging failed SSL connections.

44ffe7c2 16-Jul-2016 Augustin Cavalier <waddlesplash@gmail.com>

BSecureSocket: Explicitly set the list of ciphersuites.

OpenSSL's default cipherlist has a lot of spurious and arguably insecure
suites left in it for compatibility reasons. We have no need for all that,
so let's just use the suites Firefox/Chrome do.

b39f9357 10-Jul-2016 Augustin Cavalier <waddlesplash@gmail.com>

BSecureSocket: Disable SSL/TLS compression to prevent the CRIME attack.

See wikipedia:CRIME (Compression-Rate Info-leak Made Easy) for details.

e1c98cea 22-May-2016 Mark Hellegers <mark@firedisk.net>

Add support for TLS SNI

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>

fa2dd9c4 09-Apr-2016 Andrew Lindesay <apl@lindesay.co.nz>

BPackageInfo::Parser: Validate URL strings.

Fixes #12710.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
I fixed the modifications to the Jamfiles in src/bin, they were all wrong
in the patch.

b8a71696 14-May-2016 Rene Gollent <rene@gollent.com>

BSocketMessenger: Further improvements.

- Messages that expect a reply are now tagged with a unique ID field to
indicate that expectation to the receiving socket messenger.
- The messenger now maintains a map of received reply IDs and their
corresponding messages, along with a message queue of other unsolicited
replies.
- After successfully connecting, the messenger now spawns a thread
whose sole responsibility is receiving and parsing all incoming messages,
and consequently sorting them into the aforementioned data structures based
on the presence of the reply ID. Callers who are awaiting either replies or
other messages are signalled appropriately via a semaphore. This allows
multiplexing of both types of messages on the same socket.

f0a5e33a 13-May-2016 Augustin Cavalier <waddlesplash@gmail.com>

HttpAuthentication: Add explicit copy & assignment constructors.

So that we don't copy the BLocker. Fixes part of the build.

33bb9831 30-Apr-2016 Murai Takashi <tmurai01@gmail.com>

netresolv: Fix gcc2 build

Change suppress warnings options to -Wno-sign-compare
since -Wno-error= can be used with gcc 4.2 or later.

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>

6d4e35f6 01-May-2016 Rene Gollent <rene@gollent.com>

BSocketMessenger: Fix size mismatch.

- The header size was accidentally being included in the flat buffer size,
leading to a mismatch error when reading the incoming message.

6dd98243 01-May-2016 Rene Gollent <rene@gollent.com>

BSocketMessenger: Style fixes.

493cced1 30-Apr-2016 Rene Gollent <rene@gollent.com>

libbnetapi: Add socket messenger class.

- Introduces new network API class BSocketMessenger, allowing one to send
and receive BMessages across a network socket in a BMessenger-like
fashion. Still very much WIP, hence currently not exposed via public headers.
Based partly on previous work by Axel.

c9dd7d0d 27-Apr-2016 Rene Gollent <rene@gollent.com>

libbnetapi: Extend socket classes.

B{Abstract,Datagram,Secure}Socket:
- Add functionality to listen for and accept new connections, thus allowing
one to use the socket classes for server functionality as well.

BSecureSocket:
- Adjust to take into account differences between how SSL needs to be called
when accepting an incoming connection vs initiating an outbound one.
The handshake on the accepted connection stills fails for unknown reasons
at the moment though.

Note that these changes break the ABI, and thus any packages making use of
them directly will need a rebuild.

42b76781 27-Apr-2016 Alexander von Gluck IV <kallisti5@unixzen.com>

netresolv: Fix build issues under Ubuntu 16.04 and OS X

* Either gcc or bison version changes are throwing a
sign-compare Werror in the generateda irs nslexer.c
* This simply targets that Werror and disabled it in irs

31023893 15-Mar-2016 Julian Harnath <julian.harnath@rwth-aachen.de>

Network Kit: add BNetworkDevice::Control

* Allows to do an arbitrary ioctl on the network device

* For ifreq and ieee80211req requests

8028ede7 15-Jan-2016 Rene Gollent <rene@gollent.com>

Build: Add architecture rule for libshared.a.

- As suggested by Ingo, add libshared.a to the architecture name map.
This allows it to be linked by its short name like other frequently
used libraries.
- Adjust all Jamfiles referencing the lib accordingly.

1f70a8df 13-Nov-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

SecureSocket: enable auto retry on connexion re-negociation

This is required to talk with the proxy in Thalys trains.
Now I'm online and I can push this!

2ecff85c 13-Nov-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: don't send an empty URL for GET request

* The new proxy in Thalys trains doesn't like that.

0b6c1895 12-Nov-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

BNetworkCookieJar: rework locking

The cookie jar used to be locked whenever an iterator was instanciated.
This didn't work well when using several iterators in the same thread,
because the BLocker then allows all of them to access the list
concurrently.

Rework the locking code to use a more fine grained approach, where the
cookie jar is only locked temporarily by methods which require it. These
methods are the ones which get and put new domain-lists in the jar, as
well as acquiring the locks on the domain-lists.

Each domain-list in the jar is locked using a read/write lock as before.
This means there can be many requests getting cookies for the same
domain in paralel, but only one at a time is allowed to set new cookies.

The iterators keep domain lists they need to access read-locked, as long
as they iterate the cookies for that domain.

A limitation of this approach is that deleting a domain-list when it
becomes empty is difficult. We can live with this, however, the
iteration still works (it just skips empty lists), and the empty lists
will not be stored or restored when archiving the cookie jar.

f1c1a9df 10-Nov-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

SecureSocket: stubs for no-openssl version

c6149613 10-Nov-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

Implement CONNECT pass-through for HTTPS proxy

* When using a proxy, HTTPS connexion must still go directly to the
target website. The proxy can then act as a TCP stream relay and just
transmit the raw SSL stream between the client and website.
* For this, we ask the proxy sending an HTTP request with the CONNECT
method. If the proxy supports this, we can then send anything as the
payload and it will be forwarded.
* Untested, as the network here in Dusseldorf doesn't let me use a
proxy.

ticket : #10973

d3b6b9e5 10-Nov-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

BSecureSocket: use "trusted first" validation algorithm.

* This makes it work with the new ca_root_certificates package.

Fixes #12004.

55af491f 09-Nov-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

BUrlContext: fix logic reversal in certificate comparison

The Predicate for BObjectList::FindIf must actually be a difference
operator, and return 0 if there is a match.

4849ab6c 09-Nov-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

BHttpRequest: add SSL certificate exception management.

When an HTTPS request uses an SSL certificate that OpenSSL considers
untrusted, and the user decides to continue anyway, add the certificate
to an exception list. Match certificates against this list and don't ask
the user again if they are already there.

Fixes #12004. Thanks to markh for the initial patch and peeking into the
WebKit code!

f26dbfe7 08-Nov-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

BCertificate: build fix.

6c32f50a 08-Nov-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

BCertificate: fixup the API

* Add an operator== and a copy constructor
* Make the getters const so they are easier to use

5a87d490 04-Sep-2015 Adrien Destugues <pulkomandy@gmail.com>

Fix implementation of _res.

While not thread-safe, it should still be possible to use it in
non-threaded programs, or with locking on the application side.

The "thread-safe" implementation we got from NetBSD called abort(),
which is not a good solution. Restore the non-thread-safe
implementation, which should still work.

Fixes issues in openssh and mtr, and possibly other ported apps.

f93dab03 29-Jul-2015 Adrien Destugues <pulkomandy@gmail.com>

getifaddrs: don't fail if there are no interfaces.

* This is not an error, just return an empty list.
* Same behavior as *BSD implementation.

1c620237 29-Jul-2015 Augustin Cavalier <waddlesplash@gmail.com>

NetworkAddress: Fix things yet again.

If I had used my head instead of blindly c&p'ing the suggested code
from Axel's message, I would have realized that Unset() unsets fStatus
too. Not a bright thing to do on my part...

1690d2f4 29-Jul-2015 Augustin Cavalier <waddlesplash@gmail.com>

BNetworkAddress: Fix review comments (again).

Axel changed his mind about the status on Unset(), and I messed
up the fStatus setters.

d682f9fc 28-Jul-2015 Augustin Cavalier <waddlesplash@gmail.com>

BNetworkAddress: Address review comments.

Thanks Axel and Rene!

71b756a0 27-Jul-2015 Augustin Cavalier <waddlesplash@gmail.com>

BNetworkAddress: Fix setting fStatus all over the place.

Relevant quote from IRC:
<pdziepak> i would expect all overloads of SetTo to return status_t
<pdziepak> actually, i don't think what i would expect from class with such interface
<pdziepak> bugs probably

c1dbcef2 13-Jul-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

getaddrinfo: properly implement AI_ADDRCONFIG

* Exclude the localhost interface when building the supported family list,
* Filter DNS replies to keep only the allowed address families.

Fixes #8293, for real this time.

db8517e2 05-Jul-2015 Julian Harnath <julian.harnath@rwth-aachen.de>

netresolv: use thread-safe version of res functions

* Make getaddrinfo() and friends thread-safe by using the thread-safe
versions of the res functions.

* NetBSD offers two versions of the res functions: one in res_state.c
from the netresolv directory, defined as weak symbols. It is the
legacy version and only for single-threaded applications.
A thread-safe version of the functions is in res_state.c inside
their libpthread directory. An application that uses pthreads on
NetBSD will then use the non-weak symbols from the pthreads
library.

* On Haiku, the thread-safe version is now always used. The
res_state.c is taken from NetBSD's libpthread directory, and then
only struct _nres from the other file is added to it.

Please keep this in mind for future updates of netresolv, do not
accidentally replace it with the single-threaded version.

* This e.g. fixes WebPositive just hanging when opening websites
(even in situations where no IPv6-related problems apply), waiting
forever to resolve names.

dfcbef64 04-Jul-2015 Philippe Saint-Pierre <stpere@gmail.com>

Erratum hrev49359: Compare size with 0 rather that B_OK

Thanks Ingo!

a495c5e6 03-Jul-2015 Philippe Saint-Pierre <stpere@gmail.com>

NetBuffer: Check result of FlattenedSize() for error

CID 610923

e04f294f 03-Jul-2015 Philippe Saint-Pierre <stpere@gmail.com>

GopherRequest: fixes for null dereference

CID 1249920

a73795ff 30-Jun-2015 Julian Harnath <julian.harnath@rwth-aachen.de>

Revert "BNetworkAddressResolver: fix setting AI_ADDRCONFIG flag"

B_UNCONFIGURED_ADDRESS_FAMILIES is not a mapping to AI_ADDRCONFIG,
it's the opposite...

This reverts commit a8962b392a7cc9783596c1ed88babe3d864e6759.

a8962b39 30-Jun-2015 Julian Harnath <julian.harnath@rwth-aachen.de>

BNetworkAddressResolver: fix setting AI_ADDRCONFIG flag

* Condition was the wrong way

0fc8084a 28-Jun-2015 Julian Harnath <julian.harnath@rwth-aachen.de>

BNetworkAddressResolver: fix getting address of given family

* Fix wrong nesting of loops which are supposed to skip the first
(*cookie) number of elements and those with the wrong address
family

* With a start value of first = 0 (the usual case), the old code
would always just return the first element of the addrinfo list, no
matter which address family was actually requested

896c0b75 30-Jun-2015 Augustin Cavalier <waddlesplash@gmail.com>

Move doc from src/kits/network to docs/net.

Thanks Adrien for reviewing!

a46dbfb5 29-Jun-2015 Augustin Cavalier <waddlesplash@gmail.com>

netresolv: Delete unused Makefiles.

b75bd04b 29-Jun-2015 Augustin Cavalier <waddlesplash@gmail.com>

netresolv: Add a quick document on how to synchronize with NetBSD.

3cc9802e 29-Jun-2015 Augustin Cavalier <waddlesplash@gmail.com>

netresolv/COPYRIGHT: Add BSD license, as it's in some of the sources.

4ae91d30 29-Jun-2015 Augustin Cavalier <waddlesplash@gmail.com>

netresolv/isc: get rid of duplicate base64.c.

cd88c756 29-Jun-2015 Augustin Cavalier <waddlesplash@gmail.com>

netresolv: remove nonexistent directory from Jamfile.

08336907 29-Jun-2015 Augustin Cavalier <waddlesplash@gmail.com>

netresolv: Get rid of BSD strsep compat code.

We already have this in our libbsd.

24a60d9b9 28-Jun-2015 Augustin Cavalier <waddlesplash@gmail.com>

netresolv/resolv: Merge remaining patches from 2013 to current HEAD.

Commits merged from the semi-official Git mirror of NetBSD
trunk (https://github.com/IIJ-NetBSD/netbsd-src/ - NetResolv
is in the tree at lib/libc/netresolv/).

Commit authors/messages in chronological order follow:
---------------------------------------
From: wiz <wiz@netbsd.org>
Date: Mon, 9 Dec 2013 09:35:17 +0000
Subject: Fix typo ("then" instead of "than")

From: christos <christos@netbsd.org>
Date: Tue, 16 Sep 2014 01:30:00 +0000
Subject: close on exec hostaliases

From: christos <christos@netbsd.org>
Date: Tue, 11 Nov 2014 03:29:24 +0000
Subject: PR/48475: YAMAGUCHI Takanori: EDNS option broken with
unbound. struct querybuf in net/gethnamaddr.c defines MAXPACKET to 64K. This
in turn gets passed down until it reached res_nopt(..., answer, anslen), where
the size of the buffer must fit in 16 bits. Unfortunately we end up
being one more than the max so we end up sending a 0 as the size and
unbound does not like that. Instead we clip now to 64K - 1, and everyone
is happy.
XXX: Pullup to 7.

From: christos <christos@netbsd.org>
Date: Tue, 24 Feb 2015 17:57:08 +0000
Subject: belated removal of the advertising clause.

f1b36c90 29-Jun-2015 Augustin Cavalier <waddlesplash@gmail.com>

netresolv/inet: Merge remaining patches from 2013 to current HEAD.

Commits merged from the semi-official Git mirror of NetBSD
trunk (https://github.com/IIJ-NetBSD/netbsd-src/ - inet
is in the tree at lib/libc/inet/).

Commit authors/messages in chronological order follow:
---------------------------------------
From: christos <christos@netbsd.org>
Date: Mon, 10 Feb 2014 16:29:30 +0000
Subject: PR/48585: Henning Petersen: Always set errno when returning NULL.

From: christos <christos@netbsd.org>
Date: Mon, 10 Feb 2014 16:30:54 +0000
Subject: remove unneeded code, and kill parens from return

227af8c0 28-Jun-2015 Hamish Morrison <hamishm53@gmail.com>

netresolv: ensure pthread_rwlock is initialized before use

Under some circumstances the pthread_rwlock protecting the name service
configuration was not initialized, and the calls to rdlock/wrlock would
silently fail.

67c816c4 28-Jun-2015 Axel Dörfler <axeld@pinc-software.de>

libnetwork: Fixed getifaddrs() implementation.

* It overwrote the request buffer, and tried to access its previous
contents afterwards.
* It incorrectly copied sockaddrs.
* It did not initialize all members.
* It did not check for error codes from ioctl().
* It did not properly set errno in many cases, but just returned an
error right away.
* This hopefully fixes bug #12156. Adrien obviously had a bad day :-)

60295ba1 20-Jun-2015 Adrien Destugues <pulkomandy@gmail.com>

Move ports and protocols files back to data directory in Haiku package.

These files are required for netresolv functionality, and there is no
real use in modifying them as settings files. Restore the previous
behavior, the files are stored in data and part of the Haiku package.

This means there is no need for a fresh install from image to get the
files anymore.

Fixes #12156.

032d5b4b 16-Jun-2015 Adrien Destugues <pulkomandy@gmail.com>

netresolv: really enable IPV6.

* Fixes setting of IPv6 address for localhost
* Maybe helps with #12156

d4658550 15-Jun-2015 Adrien Destugues <pulkomandy@gmail.com>

netresolv: enable IPv6, remove useless Jamfile stuff

f15fb39b 15-Jun-2015 Adrien Destugues <pulkomandy@gmail.com>

Properly fix Lex/Yacc dependency following Ingo's advice

* By setting HDRGRIST to match SOURCE_GRIST in MultiArchDirSetup, the
include scanning in Jam will work properly: the generated header will
have the same grist as what the include scan looks for.
* Remove the now unneeded workaround from netresolv Jamfile.

56b2d534 14-Jun-2015 Jessica Hamilton <jessica.l.hamilton@gmail.com>

netresolv: add an explicit include for nsparser.h

The grist for nsparser.h doesn't include the architecture
despite using MultiArchSubDirSetup, so we need to
explicitly include the correctly gristed header.

87aab8e7 14-Jun-2015 Adrien Destugues <pulkomandy@gmail.com>

Use complete name for libbsd.

* Maybe fixes the dependency detection?

842d3994 14-Jun-2015 Adrien Destugues <pulkomandy@gmail.com>

rename libbind to netresolv.

* Match current upstream project name
* Improve tab-completion pattern by removing common prefix with libnetapi


Jamfile
netresolv/COPYRIGHT
netresolv/Jamfile
netresolv/bsd/strsep.c
netresolv/config.h
netresolv/defaults/services
netresolv/dst/dst_api.c
netresolv/dst/dst_internal.h
netresolv/dst/hmac_link.c
netresolv/dst/md5.h
netresolv/dst/md5_dgst.c
netresolv/dst/md5_locl.h
netresolv/dst/support.c
netresolv/include/Makefile
netresolv/include/Makefile.in
netresolv/include/fd_setsize.h
netresolv/include/hesiod.h
netresolv/include/irp.h
netresolv/include/irs.h
netresolv/include/isc/assertions.h
netresolv/include/isc/ctl.h
netresolv/include/isc/dst.h
netresolv/include/isc/eventlib.h
netresolv/include/isc/heap.h
netresolv/include/isc/irpmarshall.h
netresolv/include/isc/list.h
netresolv/include/isc/logging.h
netresolv/include/isc/memcluster.h
netresolv/include/isc/misc.h
netresolv/include/isc/platform.h
netresolv/include/isc/platform.h.in
netresolv/include/isc/tree.h
netresolv/include/netgroup.h
netresolv/include/nsswitch.h
netresolv/include/res_update.h
netresolv/include/resolv_mt.h
netresolv/include/sys/bitypes.h
netresolv/include/utmp.h
netresolv/inet/inet_addr.c
netresolv/inet/inet_cidr_ntop.c
netresolv/inet/inet_cidr_pton.c
netresolv/inet/inet_lnaof.c
netresolv/inet/inet_makeaddr.c
netresolv/inet/inet_net_ntop.c
netresolv/inet/inet_net_pton.c
netresolv/inet/inet_neta.c
netresolv/inet/inet_netof.c
netresolv/inet/inet_network.c
netresolv/inet/inet_ntoa.c
netresolv/inet/inet_ntop.c
netresolv/inet/inet_pton.c
netresolv/inet/nsap_addr.c
netresolv/irs/base64.c
netresolv/irs/getaddrinfo.c
netresolv/irs/gethnamaddr.c
netresolv/irs/getnameinfo.c
netresolv/irs/getnetent.c
netresolv/irs/getnetnamadr.c
netresolv/irs/getprotobyname.c
netresolv/irs/getprotobyname_r.c
netresolv/irs/getprotobynumber.c
netresolv/irs/getprotobynumber_r.c
netresolv/irs/getprotoent.c
netresolv/irs/getprotoent_r.c
netresolv/irs/getservbyname.c
netresolv/irs/getservbyname_r.c
netresolv/irs/getservbyport.c
netresolv/irs/getservbyport_r.c
netresolv/irs/getservent.c
netresolv/irs/getservent_r.c
netresolv/irs/hesiod.c
netresolv/irs/lcl_sv.cpp
netresolv/irs/nsdispatch.c
netresolv/irs/nslexer.l
netresolv/irs/nsparser.y
netresolv/irs/protoent.h
netresolv/irs/servent.h
netresolv/irs/sethostent.c
netresolv/irs/vars6.c
netresolv/isc/assertions.c
netresolv/isc/assertions.mdoc
netresolv/isc/base64.c
netresolv/isc/bitncmp.c
netresolv/isc/bitncmp.mdoc
netresolv/isc/ctl_clnt.c
netresolv/isc/ctl_p.c
netresolv/isc/ctl_p.h
netresolv/isc/ctl_srvr.c
netresolv/isc/ev_connects.c
netresolv/isc/ev_files.c
netresolv/isc/ev_streams.c
netresolv/isc/ev_timers.c
netresolv/isc/ev_waits.c
netresolv/isc/eventlib.c
netresolv/isc/eventlib.mdoc
netresolv/isc/eventlib_p.h
netresolv/isc/heap.c
netresolv/isc/heap.mdoc
netresolv/isc/hex.c
netresolv/isc/logging.c
netresolv/isc/logging.mdoc
netresolv/isc/logging_p.h
netresolv/isc/memcluster.c
netresolv/isc/memcluster.mdoc
netresolv/isc/movefile.c
netresolv/isc/tree.c
netresolv/isc/tree.mdoc
netresolv/nameser/ns_name.c
netresolv/nameser/ns_netint.c
netresolv/nameser/ns_parse.c
netresolv/nameser/ns_print.c
netresolv/nameser/ns_samedomain.c
netresolv/nameser/ns_ttl.c
netresolv/port_after.h
netresolv/port_before.h
netresolv/resolv/h_errno.c
netresolv/resolv/herror.c
netresolv/resolv/mtctxres.c
netresolv/resolv/res_comp.c
netresolv/resolv/res_data.c
netresolv/resolv/res_debug.c
netresolv/resolv/res_debug.h
netresolv/resolv/res_init.c
netresolv/resolv/res_mkquery.c
netresolv/resolv/res_private.h
netresolv/resolv/res_query.c
netresolv/resolv/res_send.c
netresolv/resolv/res_state.c
f972422c 14-Jun-2015 Adrien Destugues <pulkomandy@gmail.com>

Add a simple DNS caching system to BNetworkAddress

netresolv (and libbind) won't cache DNS requests, which can result in a
lot of DNS requests being made for the same host. Implement a simple
cache in RAM (local to each application) which will keep the most
recently requested addresses cached. This can speed up loading of an
HTTP page a lot, by saving a DNS request for each resource stored on the
same server as the main page.

755f6d2f 14-Jun-2015 Adrien Destugues <pulkomandy@gmail.com>

BNetworkRequest: Remove workaround that is not needed anymore

Now that netresolv handles DNS resolution properly, there is no need to
force IPv4 here.

1dc3cf77 14-Jun-2015 Adrien Destugues <pulkomandy@gmail.com>

Style fixes.

8d2aee6b 14-Jun-2015 Adrien Destugues <pulkomandy@gmail.com>

libbind: integrate "netresolv" patches from NetBSD.

libbind development was transferred to the NetBSD project at
http://wiki.netbsd.org/individual-software-releases/netresolv/

There isn't an official release yet, but they provide a set of patches
against the latest libbind release.

* Remove all files we don't use
* Merge the changes to the remaining files
* Add some new files we need
* Move getifaddrs implementation to libnetwork (instead of libbnetapi)
so it can be used by netresolv.

Fixes #8293 : netresolv uses getifaddrs to determine if there is a local
IPv6 address. If there is not, it will not return AAAA records.


Jamfile
getifaddrs.cpp
libbind/Jamfile
libbind/include/hesiod.h
libbind/include/nsswitch.h
libbind/inet/inet_addr.c
libbind/inet/inet_cidr_ntop.c
libbind/inet/inet_cidr_pton.c
libbind/inet/inet_data.c
libbind/inet/inet_lnaof.c
libbind/inet/inet_makeaddr.c
libbind/inet/inet_net_ntop.c
libbind/inet/inet_net_pton.c
libbind/inet/inet_neta.c
libbind/inet/inet_netof.c
libbind/inet/inet_network.c
libbind/inet/inet_ntoa.c
libbind/inet/inet_ntop.c
libbind/inet/inet_pton.c
libbind/inet/nsap_addr.c
libbind/irs/base64.c
libbind/irs/dns.c
libbind/irs/dns_gr.c
libbind/irs/dns_ho.c
libbind/irs/dns_nw.c
libbind/irs/dns_p.h
libbind/irs/dns_pr.c
libbind/irs/dns_pw.c
libbind/irs/dns_sv.c
libbind/irs/gai_strerror.c
libbind/irs/gen.c
libbind/irs/gen_gr.c
libbind/irs/gen_ho.c
libbind/irs/gen_ng.c
libbind/irs/gen_nw.c
libbind/irs/gen_p.h
libbind/irs/gen_pr.c
libbind/irs/gen_pw.c
libbind/irs/gen_sv.c
libbind/irs/getaddrinfo.c
libbind/irs/getgrent.c
libbind/irs/getgrent_r.c
libbind/irs/gethnamaddr.c
libbind/irs/gethostent.c
libbind/irs/gethostent_r.c
libbind/irs/getnameinfo.c
libbind/irs/getnetent.c
libbind/irs/getnetent_r.c
libbind/irs/getnetgrent.c
libbind/irs/getnetgrent_r.c
libbind/irs/getnetnamadr.c
libbind/irs/getprotobyname.c
libbind/irs/getprotobyname_r.c
libbind/irs/getprotobynumber.c
libbind/irs/getprotobynumber_r.c
libbind/irs/getprotoent.c
libbind/irs/getprotoent_r.c
libbind/irs/getpwent.c
libbind/irs/getpwent_r.c
libbind/irs/getservbyname.c
libbind/irs/getservbyname_r.c
libbind/irs/getservbyport.c
libbind/irs/getservbyport_r.c
libbind/irs/getservent.c
libbind/irs/getservent_r.c
libbind/irs/hesiod.c
libbind/irs/hesiod_p.h
libbind/irs/irp.c
libbind/irs/irp_gr.c
libbind/irs/irp_ho.c
libbind/irs/irp_ng.c
libbind/irs/irp_nw.c
libbind/irs/irp_p.h
libbind/irs/irp_pr.c
libbind/irs/irp_pw.c
libbind/irs/irp_sv.c
libbind/irs/irpmarshall.c
libbind/irs/irs_data.c
libbind/irs/irs_data.h
libbind/irs/irs_p.h
libbind/irs/lcl.c
libbind/irs/lcl_gr.c
libbind/irs/lcl_ho.c
libbind/irs/lcl_ng.c
libbind/irs/lcl_nw.c
libbind/irs/lcl_p.h
libbind/irs/lcl_pr.c
libbind/irs/lcl_pw.c
libbind/irs/nis.c
libbind/irs/nis_gr.c
libbind/irs/nis_ho.c
libbind/irs/nis_ng.c
libbind/irs/nis_nw.c
libbind/irs/nis_p.h
libbind/irs/nis_pr.c
libbind/irs/nis_pw.c
libbind/irs/nis_sv.c
libbind/irs/nsdispatch.c
libbind/irs/nslexer.l
libbind/irs/nsparser.y
libbind/irs/nul_ng.c
libbind/irs/pathnames.h
libbind/irs/protoent.h
libbind/irs/servent.h
libbind/irs/sethostent.c
libbind/irs/util.c
libbind/irs/vars6.c
libbind/isc/eventlib.c
libbind/nameser/ns_date.c
libbind/nameser/ns_name.c
libbind/nameser/ns_netint.c
libbind/nameser/ns_newmsg.c
libbind/nameser/ns_parse.c
libbind/nameser/ns_print.c
libbind/nameser/ns_rdata.c
libbind/nameser/ns_samedomain.c
libbind/nameser/ns_sign.c
libbind/nameser/ns_ttl.c
libbind/nameser/ns_verify.c
libbind/resolv/h_errno.c
libbind/resolv/herror.c
libbind/resolv/mtctxres.c
libbind/resolv/res_comp.c
libbind/resolv/res_data.c
libbind/resolv/res_debug.c
libbind/resolv/res_debug.h
libbind/resolv/res_findzonecut.c
libbind/resolv/res_init.c
libbind/resolv/res_mkquery.c
libbind/resolv/res_mkupdate.c
libbind/resolv/res_mkupdate.h
libbind/resolv/res_private.h
libbind/resolv/res_query.c
libbind/resolv/res_send.c
libbind/resolv/res_sendsigned.c
libbind/resolv/res_state.c
libbind/resolv/res_update.c
libnetapi/Jamfile
libnetapi/getifaddrs.cpp
091a80ae 15-Apr-2015 Adrien Destugues <pulkomandy@gmail.com>

Protect all BSD extensions with _BSD_SOURCE

* Do not define the symbols by default, as they are not in the default
libraries.
* Adjust jamfiles of all code using BSD extensions to define
_BSD_SOURCE.
* This makes Haiku slightly more compliant to standard C/POSIX.

9bf9ee38 12-Apr-2015 Michael Lotz <mmlr@mlotz.ch>

Whitespace and style cleanup only.

3b7b927d 12-Apr-2015 Michael Lotz <mmlr@mlotz.ch>

libbnetapi: Add BNetworkRoute to replace use of route_entry.

The BNetworkRoute class manages a route_entry and the sockaddr's
associated with it. It replaces the direct use of route_entry in the
BNetworkInterface API.

Using route_entry is fragile and inconvenient as it only holds pointers
to the sockaddr's. When getting a list of routes from the kernel, each
route_entry is set up so that its pointers point into the single flat
buffer that is passed around. Creating a copy of the route_entry and
then deleting the flat buffer makes the pointers in the copy stale.
Returning these route entries therefore always lead to a use-after-free
when they were eventually used.

BNetworkRoute also takes over the code and functionallity of getting
routes from RouteSupport. The corresponding method in BNetworkRoster is
replaced by a static method in BNetworkRoute.

Also distinguish between the default route and gateway of an interface.
GetDefaultRoute() now gets the default BNetworkRoute for the interface
while GetDefaultGateway() gets the associated gateway address within
that default route. Adjust network preferences panel to this change.

Note that we currently only seem to have per interface default routes
and not an actual global default route. This was already the case before
these changes and I did not further investigate what this means.

0a6b5623 23-Mar-2015 Axel Dörfler <axeld@pinc-software.de>

net_server: fixed configuring disabled interfaces.

* BNetworkSettings now set unspecified addresses to their empty family
specific addresses, instead of using AF_UNSPEC.
* This allows the net_server to set those addresses on the address
specific stack interface.

d0444575 23-Mar-2015 Axel Dörfler <axeld@pinc-software.de>

BNetworkAddress::IsEmpty() now detects empty ipv4/6.

* Until now, only AF_UNSPEC addresses could be empty.
* Now, the unspecified IPV4/IPv6 address is considered empty, too.
* This corresponds to how the kernel modules handles this.

687d0bc2 23-Mar-2015 Axel Dörfler <axeld@pinc-software.de>

DriverSettingsMessageAdapter: fixed converter signature.

* The ConvertFromDriverSettings() method missed the current value
index.
* Completed unit tests, and enabled them all.

f7ccc9af 16-Mar-2015 Axel Dörfler <axeld@pinc-software.de>

BNetworkSettings: added const, server IsRunning() method.

* Get{Interface|Network|Service}() methods are now const.
* Added variants of Interface(), and Service() that are const.
* Added new BNetworkServiceSettings::IsRunning() convenience method that
reflects the status quo rather than the settings.

a7f408b4 12-Mar-2015 Axel Dörfler <axeld@pinc-software.de>

Fixed BNetworkServiceSettings::IsEnabled(), GetMessage()

* GetMessage() now checks if the only existing address is the default
wildcard address, and then omits it in the message (as it will be
created by default, anyway).

1f94cdcd 11-Mar-2015 Axel Dörfler <axeld@pinc-software.de>

BNetworkServiceSettings: Added missing functions/constructor.

7ca40f60 10-Mar-2015 Axel Dörfler <axeld@pinc-software.de>

BNetworkSettings: made service stuff writable.

* And added the ability to disable a service without losing its
configuration.

b00dcbca 04-Mar-2015 Axel Dörfler <axeld@pinc-software.de>

BNetworkSettings: added some convenience methods.

* From InterfaceAddressView: FindFirstAddress(), and IsAutoConfigure().
* Removed some debug leftovers in InterfaceAddressView, too.

e4f4658a 04-Mar-2015 Axel Dörfler <axeld@pinc-software.de>

BNetworkSettings: made interface settings writable.

* It also makes use of the new driver settings converter mechanism.

f16f9ee4 25-Feb-2015 Axel Dörfler <axeld@pinc-software.de>

Moved more functionality from net_server to NetworkSettings.

* Added (still incomplete) helper classes for the settings messages.
* The net_server now uses these classes for its interfaces, and services.
* Renamed service_address to service_connection, as that better matches
what it is used for.

d880e2d9 19-Feb-2015 Axel Dörfler <axeld@pinc-software.de>

BNetworkSettings: added Get*() by name methods.

fd55fb66 18-Feb-2015 Axel Dörfler <axeld@pinc-software.de>

Moved net_server's settings to libbnetapi.

* As experimental API class BNetworkSettings.
* Added add/remove methods for interfaces, and services, too.
* Moved the conversion of the wireless networks into the settings class,
too, so that it only gives out converted ones (but accepts both
variants).

d5dd8637 11-Feb-2015 Axel Dörfler <axeld@pinc-software.de>

BNetworkDevice.GetHardwareAddress() was broken.

* Copy&paste error, apparently.

caf2bf01 18-Feb-2015 Adrien Destugues <pulkomandy@gmail.com>

indentation fix.

Catched by Axel.

6f1d5d48 19-Feb-2015 Adrien Destugues <pulkomandy@gmail.com>

HttpRequest: implement POST>GET conversion on redirects

302 and 303 redirects must convert POST requests to GET (and remove the
POST data).
Fixes the following problems (at least):
* Login to github going to the "unicorn!" page
* Gmail failing to load and staying at the loaderbar page

ff75005a 06-Feb-2015 Adrien Destugues <pulkomandy@gmail.com>

DataRequest, FileRequest: send HeadersReceived notification

The "header" in this case is just the MIME type and content size, but we
must still send the notification when these are available. It will be
used for example in WebKit next release.

77206143 05-Feb-2015 Axel Dörfler <axeld@pinc-software.de>

Revert "Move getifaddrs to libnetwork again."

This reverts commit 31ea76548a64b232ed10cb444bf84ca1f7e40b0f.

Adrien, please try again without clobbering the otherwise nice
BNetworkInterface API!

Conflicts:
src/kits/network/getifaddrs.cpp

a08f5ecb 05-Feb-2015 Axel Dörfler <axeld@pinc-software.de>

Revert "BNetworkInterfaceAddress: missing initialization"

This reverts commit fbc43a72791c50ba02c0c500551bf87afdd833b3.

fbc43a72 26-Jan-2015 Adrien Destugues <pulkomandy@gmail.com>

BNetworkInterfaceAddress: missing initialization

* As it doesn't rely on BNetworkAddress anymore,
BNetworkInterfaceAddress must now take care of initializing the
addresses itself.
* Also add some input sanitization and and asserts to ease detecting
such problems.
* Fixes #11778.

2ba13ecd 21-Jan-2015 Adrien Destugues <pulkomandy@gmail.com>

getifaddrs: actually iterate over interfaces.

c861dfdb 26-Jan-2015 Adrien Destugues <pulkomandy@gmail.com>

HttpRequest: fix HTTP to HTTPS redirects

When redirected from http to https, we did not switch to SSL and port
443 and kept using unencrypted http on port 80.

31ea7654 20-Jan-2015 Adrien Destugues <pulkomandy@gmail.com>

Move getifaddrs to libnetwork again.

* BNetworkInterfaceAddress is moved to libnetwork. It is modified to not
use BNetworkAddress (which is in libbnetapi) and instead use sockaddr
and sockaddr_storage directly. All callers are adjusted to this.
* Some support code is shared between BNetworkInterface and
BNetworkInterfaceAddress, move it to libnetwork but in the BPrivate
namespace.

8e13d9d6 16-Jan-2015 Adrien Destugues <pulkomandy@gmail.com>

getifaddrs: std::nothrow and allocation checks.

Thanks to Axel for reviewing.

46c267cf 16-Jan-2015 Adrien Destugues <pulkomandy@gmail.com>

Move getifaddrs to libbnetapi

* Since it uses BNetworkAddress, it can't be in libnetwork.

e2fc7cd3 16-Jan-2015 Adrien Destugues <pulkomandy@gmail.com>

Implement getifaddrs.

This is a BSD extension also available in glibc, but is not POSIX.
Fixes #6279.

c500331f 24-Apr-2013 Axel Dörfler <axeld@pinc-software.de>

BSecureSocket: prepared to do SSL error conversion.

* For now, just print them to stderr; we don't really have matching error
codes yet AFAICS.

71c761d9 05-Jan-2015 Adrien Destugues <pulkomandy@gmail.com>

HttpRequest: rewind the input data before sending it

* This is needed for redirects to work as expected.
* It makes it harder to send data starting from the middle of a
BPositionIO (you now need a wrapper object), but that is an uncommon
feature so it is acceptable.

Fixes #11687.

0fecd3e8 09-Dec-2014 Adrien Destugues <pulkomandy@gmail.com>

Build fix.

7148abdc 09-Dec-2014 Adrien Destugues <pulkomandy@gmail.com>

HttpForm: implement copy constructor.

Thanks to GCI studdent arroyoc for finding that this was missing and
HttpRequest.SetFormData couldn't work.

dc4f88b8 02-Dec-2014 Chirayu Desai <chirayudesai1@gmail.com>

libbind: Fix Coverity bug 603368: Missing break in switch

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>

fbd8b14a 06-Nov-2014 Adrien Destugues <pulkomandy@gmail.com>

SecureSocket: fix build without SSL.

5ee2151e 04-Nov-2014 Adrien Destugues <pulkomandy@gmail.com>

BHttpRequest: propagate SSL errors to listener

This way it's possible to handle them in applications.

c86ad7f9 04-Nov-2014 Adrien Destugues <pulkomandy@gmail.com>

Add more features in BCertificate class

* Make it possible to extract more useful data from the certificate
* Also get the OpenSSL error message when a certificate can't be
validated. Send it to the verification failure callback so it can be
shown to the user.

3b657701 04-Nov-2014 Adrien Destugues <pulkomandy@gmail.com>

BCertificate: fix parsing of date and name.

9bf4e994 21-Oct-2014 Adrien Destugues <pulkomandy@gmail.com>

BUrl: IDNA ToUnicode and ToASCII conversions.

* Since DNS are normally restricted to ASCII, the use of UTF-8 in domain
names is implemented using a "punycode" encoding.
* The request to the DNS server must be sent with the ASCII
representation of the domain name, however the Unicode one should be
used for user-visible parts.
* ICU provides an implementation of the conversion, which we use here.
* Conversion is currently done in-place and modifies the BUrl object
(this is similar to UrlEncode/UrlDecode).
* Adjust existing IDN test to make use of these methods. It's passing
now.

06f436b3 21-Oct-2014 Adrien Destugues <pulkomandy@gmail.com>

Use strict mode when url-decoding file requests.

We don't want '+' to become a space here.
Fixes #11109.

4f978fe4 18-Oct-2014 Adrien Destugues <pulkomandy@gmail.com>

BNetBuffer: add some error checks.

The allocation of fImpl can fail, and some methods used it without
checking. Return an error code (or NULL or 0) instead of crashing in
these cases.

Also InitCheck the fInputBuffer in BHttpRequest before trying to use it.

Fixes #11350.

1c0b6a42 15-Oct-2014 Adrien Destugues <pulkomandy@gmail.com>

SecureSocket: disable SSL versions 2 and 3

There are known vulnerabilities in those. Everyone should be using TLS
by now.

3006031a 01-Oct-2014 Oliver Tappe <zooey@hirschkaefer.de>

Move Geolocation to kits/shared and make it private.

1d38b7a8 27-Sep-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Geolocation: avoid static init of BUrl

* Fixes #11290.

be37c44a 26-Sep-2014 Adrien Destugues <pulkomandy@gmail.com>

style fix.

2f368731 26-Sep-2014 Adrien Destugues <pulkomandy@gmail.com>

UrlRequest: add empty SetTimeout for ease of use.

* Requests that support this can implement it, NetworkRequest does
* Build fix: no need to return status_t.

654ae69a 24-Sep-2014 Adrien Destugues <pulkomandy@gmail.com>

NetworkRequest: add a SetTimeout method.

8a39d53d 24-Sep-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Geolocation: remove leftover print.

80e7d929 24-Sep-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

BGeolocation: make it work with the actual API.

* It seems openbmap is using a variation of the API that's not
compatible with what other providers use.
* Fix a ";" instead of "," in the JSON request. We should get a
BJsonBuilder to avoid such silly errors
* Improve indenting of the request to ease readability.
* Parse the latitude and longitude as doubles, not strings.

This was tested against Mozilla Location Services and I get accurate
results (withing a few hundred meters). However I'm not sure how to
share the MLS API key safely so it is used only in Haiku, I will discuss
this with the MLS team.

13f04588 23-Sep-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Add BGeolocation experimental API.

A BGeolocation object can query an online service to get geolocation
and geotagging data:
* LocateSelf() tries to locate the machine it is running on, by using an
online database of wifi access points
* Locate() (not yet implemented) searches a BString and converts it to
lat/lon coordinates (reverse geotagging)
* Name() (not yet implemented) finds a suitable name for the given
coordinates (address, building name, or anything fitting).

The default service used is openbmap.org, which is freely available but
not very accurate. A request has been sent to Mozilla to use MLS
(Mozilla Location Services), which is a bit more accurate but needs an
API key. MLS is used for geolocation on FirefoxOS, for mobile phones
which don't have a GPS, and the data can be contributed by Firefox for
Android or the dedicated MozStumbler app.

Alternatively, Google Maps also provide the service, but wants
people to pay for it. Google Maps data is more accurate as all Android
devices contribute data to it.

All 3 services use the same JSON-based API: we send a list of reachable
Wifi APs (mac address and signal strength), and we get lattitude and
longitude information, and possibly extra data which will currently be
unused.

This can be used to implement HTML5 geolocation with reasonably accurate
results, but it can also be used in other places. For example
FirstBootPrompt could try to guess a list of most likely languages and
keyboard layouts from it (if wifi is working at install time, that is).

7603710e 16-Sep-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Style fixes.

21f8e588 16-Sep-2014 Adrien Destugues <pulkomandy@gmail.com>

Optimize BUrl copy.

BUrl is passed by value in many places, and we should make sure this is
as efficient as possible. There is little point in initializing all the
strings then overwriting them by using the copy constructor, when we can
set them directly.

c98378e5 15-Sep-2014 Adrien Destugues <pulkomandy@gmail.com>

Add HTTP proxy support.

* Move default context management to BUrlRequest since some code
(including the testsuite) bypass the BUrlProtocolRoster.
* Introduce proxy host and port in BUrlContext
* Have BHttpRequest use the proxy when making requests

6e38076e 04-Sep-2014 Adrien Destugues <pulkomandy@gmail.com>

Libnetapi: fix abortion of file requests.

* We didn't wait for the thread to terminate, so the thread could use
the object after deletion.

12cd565a 01-Sep-2014 Adrien Destugues <pulkomandy@gmail.com>

SecureSocket: add OpenSSL locking.

This shoiuld make OpenSSL more thread safe and help with the random
network related crashes in Web+ (and anything else using SecureSocket
with more than one thread).

87e8603d 13-Aug-2014 Oliver Tappe <zooey@hirschkaefer.de>

Merge branch 'gcc_syslibs'

* From now on, the gcc-specific system libraries (libgcc, libsupc++ and
libstdc++) are provided by separate packages built along with gcc:
- gcc_syslibs contains the shared libraries (libgcc_s.so, libsupc++.so and
libstdc++.so)
- gcc_syslibs_devel contains the static libraries and both c++ and gcc
headers
The shared libraries now make proper use of symbol versioning and there
are version-specific symlinks
* The buildsystem has been adjusted to no longer use the libraries and
headers from the cross-compiler, but use the ones provided by the
above-mentioned packages. The only exception is that the 32-bit libraries
required for the bootloader of the x86_64 architecture are still taken
from the cross-compiler.


220d0402 31-Jul-2014 Oliver Tappe <zooey@hirschkaefer.de>

Use libstdc++, libsupc++ and libgcc from gcc_syslibs.

* Instead of faking libstdc++.so from libstdc++.a, use libstdc++.so
from the gcc_syslibs build feature for everything except x86_gcc2.
* Use libgcc_s.so from the gcc_syslibs build feature for everything but
x86_gcc2 (which still carries libgcc as part of libroot.so).
* Drop filtering of libgcc objects for libroot, as that is no longer
necessary since we're only using libgcc-as-single-object for libroot
with x86_gcc2, where the filtered object file doesn't exist. Should
the objects that used to be filtered cause any problems as part of
libgcc_s.so, we can always filter them as part of the gcc build.
* Use libsupc++.so from the gcc_syslibs build feature for everything but
x86_gcc2.
* Adjust all Jamfiles accordingly.
* Deactivate building of faked libstdc++.so for non-x86-gcc2. For
x86_gcc2, we still build libstdc++.so from the sources in the Haiku
source tree as part of the Haiku build .
* Put gcc_syslibs package onto the image, when needed.

a898bb90 09-Aug-2014 François Revol <revol@free.fr>

gopher: Resolve TODO

3aeed660 07-Aug-2014 Jérôme Duval <jerome.duval@gmail.com>

include strings.h where appriopriate...

instead or additionally to string.h, in preparation for functions move.
* moves str[n]casecmp() functions and others to strings.h.
* strings.h doesn't include string.h anymore.
* this solves #10949

7bc2acc2 04-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

UrlRequest: fix race condition

* The thread could set fRunning to false before the caller had set it to
true, leading to a stalled request.
* Happened easily when testing "data" requests, which are fast since no
I/O is involved.
* Possibly also helps with stalled redirects on Google search I've been
seeing for some time.

a4e5af66 04-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Make URL decoding even more solid.

* Thanks to korli for pointing remaining issues.

781c9f2a 04-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Data URIs: don't decodewith invalid length..

89b4e98a 04-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Move signal hack to BNetworkRequest

* This is used to unlock sockets when a read is pending after a close
* It is not needed on requests that don't use a socket.

2f9b1874 04-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Factor out a BNetworkRequest

* Shares common behavior between the Gopher and HTTP request handlers.
* Most of this can be used when implemeting other protocols.

bcd6a67b 04-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Don't advertise deflate compression support.

There is some misunderstanding on what the "deflate" is, and we can't
reliably decode it in all cases. So, don't advertise support for it and
let servers use gzip (or no compression) instead.

Fixes #11093

6bd0ac94 30-Jul-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Data URLs: parse the whole URL, not just the path.

The RFC for Data URLs specifies a nonstandard format, and because of
this it doesn't support queries and fragments. This allows the use of
the # and ? characters in the URL data. We didn't handle this properly,
which would lead to truncated data.

eec76268 30-Jul-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Safer URL decoding.

Some URLs may use the % character for other purposes than URL-encoding
(this is seen in some data URLs). Make sure we parse that properly, and
avoid a possible out of bounds access if the percent char is near the
end of the string.

35edaf28 30-Jul-2014 François Revol <revol@free.fr>

gopher: Fix for 0-length path

This is the case for urls like gopher://gophernicus.org
(without trailing /), which ended up being downloaded instead of
displayed.

44a4999b 28-Jul-2014 François Revol <revol@free.fr>

gopher: Add TODOs

80be7c9d 28-Jul-2014 François Revol <revol@free.fr>

gopher: Change 'd' type items to generic documents

Gophernicus uses it for PostScript as well.

b8be1867 28-Jul-2014 François Revol <revol@free.fr>

gopher: Handle errors from Gophernicus

It sends them as plain text instead of gopher directory
when it doesn't find something...

e243a034 28-Jul-2014 François Revol <revol@free.fr>

gopher: return an error on resource not found

111d695a 28-Jul-2014 François Revol <revol@free.fr>

gopher: Use a BStackOrHeapArray as temporary buffer

And move it out of the loop, no need to construct it at
each iteration anyway.

579f9564 28-Jul-2014 François Revol <revol@free.fr>

gopher: (disabled) controls and size attributes on audio/video

Currently those crash WebPositive when enabled.

a1cce970 28-Jul-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: more small fixes and cleanups

* Remove unneeded field fOutputHeaders and convert it to a local for the
only method that uses it,
* Don't return EOVERFLOW when flushing data from ZLib (the ZLib
decompressor returns this, but zlib docs states that this is NOT an
error condition).
* Replace unneeded temporary BNetBuffer of fixed size with BStackOrHeapArray.

021ebc2f 28-Jul-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Add the port to the HTTP Host header when needed.

* When the port is not the default one, it must be added to the "Host"
header so the server knows what we're connecting to.

Fixes #11070.

948a1bb3 26-Jul-2014 François Revol <revol@free.fr>

Add identifier (device.node) to the EPLF listing

Probably not used by WebKit either...

9535708b 26-Jul-2014 François Revol <revol@free.fr>

Add Unix permission bits to the EPLF listing

As per http://cr.yp.to/ftp/list/eplf.html

Really just for completeness, not even sure Webkit will use it.

cb85a593 26-Jul-2014 François Revol <revol@free.fr>

Typo: EPLF, not EPFL, we're not in Lausanne ;-)

ad3d3335 26-Jul-2014 François Revol <revol@free.fr>

Fix gopher search forms

Now searching for haiku on Veronica 2 leads to:
gopher://gopher.floodgap.com/7/v2/vs?haiku

e95d0f00 25-Jul-2014 François Revol <revol@free.fr>

gopher: Set a default MIME type to force downloading

cf2bf306 25-Jul-2014 François Revol <revol@free.fr>

gopher: Add TODOs

0716bfd6 25-Jul-2014 François Revol <revol@free.fr>

gopher: remove debug printfs

6983b35d 25-Jul-2014 François Revol <revol@free.fr>

gopher: Add a stylesheet

Modified version from my attempt at adding gopher to NetSurf.

ec0e8153 25-Jul-2014 François Revol <revol@free.fr>

gopher: Handle audio and video types, add a default case

0e48c9ae 25-Jul-2014 François Revol <revol@free.fr>

gopher: Handle some more item types

f74e08fc 25-Jul-2014 François Revol <revol@free.fr>

gopher: Handle info resources and add proper title

We now create a proper title from the error message, or
the TITLE resource if present.

2e8b8fd0 25-Jul-2014 François Revol <revol@free.fr>

gopher: Handle binary, directory and error types

0c1a4ebf 25-Jul-2014 François Revol <revol@free.fr>

Preliminary support for Gopher

Currently parses information and text items and retrives files.

6be2152b 22-Jul-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

libbind: allow underscores in domain names

As discussed in http://www.freelists.org/post/haiku-development/Proposal-adding-nochecknames-to-resolvconf-by-default

The underscore is handled like the hyphen, that is, it can only be in
the middle of a word. "a_b.com" is valid, but "a_.com" and "_a.com" are
not.

Patch is from http://lists.freebsd.org/pipermail/freebsd-arch/2003-March/000071.html

807bd20a 22-Jul-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Allocate the default UrlContext as a BReferenceable

BUrlContext now inherits BReferenceable to make it easier to handle the
context lifespan. Make the default context an always-retained reference
to match this.

No functional change in normal conditions, however this avoids an assert
when BReferenceable is built in debug mode.

6a13b12a 21-Jul-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Write all HTTP headers to the socket in one go.

We don't have support for TCP_CORK, which would let the kernel handle
this, so this resulted in lots of very small packets being sent over the
network. Besides the performance issues, this confused aliceadsl.fr HTTP
server and prevented logging in to their website.

Fixes #10556.

9f7d29b0 21-Jul-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix two problems with chunked gzipped HTTP replies.

* receiveEnd is set in a different place in case of chunked transfers,
which would cause the decompressor to never be flushed.
* In the case of chunked transfers, we call Flush() without any input
data (to flush only whatever is remaining in the decompression buffer).
This causes ZLib to return Z_BUF_ERROR which is translated to
B_BUFFER_OVERFLOW. This is a non-fatal error and is expected behavior in
that case. Don't handle this as an error, and do use the extracted data.

Fixes various cases of missing the last chunk of a page (pastie.org,
Google search results, and more).

92dd9f73 16-Jul-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Style fixes, no functional changes.

3528905b 16-Jul-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Parse multiple HTTP at once

Instead of relying on the global protocol loop to call _ParseHeaders
once for each header, extract as much as possible from the current
buffer.

This saves memory, avoids useless operations on the socket and various
processing steps, and fixes #10245.

Also improve the handling of 0-size requests to make sure they terminate
properly.

d32cb237 23-Dec-2013 Puck Meerburg <puck@puckipedia.nl>

Fix Coverity bug 603941: Negative array index read

Signed-off-by: Philippe Saint-Pierre <stpere@gmail.com>

b0494971 03-Jul-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

BUrl::IsValid(): Replace with a slightly better dummy impl

72f6b787 02-Jul-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

BUrl: Add missing functionality from support kit BUrl

2573655b 02-Jul-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Revert "Revert "HttpRequest: support gzip and deflate compression.""

This reverts commit 256080b112e417fc4fd2f3f9fcb23485e1b23b42.

With the following changes:
* Adjusted to the BZlibCompressionAlgorithm API.
* Add some error handling.

c99f294e 02-Jul-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

BNetBuffer: Restore semantics after DynamicBuffer -> BDataIO

25d34313 02-Jul-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

DynamicBuffer::Read(): Small optimization (skip 0 case)

6926863e 02-Jul-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

DynamicBuffer::Write(): Fix return type and semantics

739f15e1 02-Jul-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Revert "Revert "DynamicBuffer: implement BDataIO""

This reverts commit 747b401e875f19d83508cc39176f4c263182c515.

158ae743 25-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Escape reserved characters when converting paths to urls

* Introduce and use BUrl::BUrl(const BPath&)
* The path is url-encoded, and the protocol is set to "file"

Fixes #10964.

747b401e 18-Jun-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Revert "DynamicBuffer: implement BDataIO"

This reverts commit 36b1f55a1841d63f0e6487e2c62c280cb24a63c4.

256080b1 18-Jun-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Revert "HttpRequest: support gzip and deflate compression."

This reverts commit c3d0dd7a5e6ca1d2d43b6ebfb4c6a67300c780f7.

Conflicts:
src/kits/network/libnetapi/HttpRequest.cpp
src/kits/network/libnetapi/Jamfile

a05da9f4 18-Jun-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Revert "...and also fix a mismatched prototype"

This reverts commit 6555120f3b0dbc783ff5cc22a4ff0ceade53a2d8.

f256bccc 18-Jun-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Revert "Fix zlib-dependency in libnetapi."

This reverts commit 6b6ff33d607f01ac07dc1fa1305eddb9f801dc73.

895fa41e 11-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Make handling of Http Authentication thread safe

* Each BHttpAuthentication object is locked on all field accesses,
* They are owned by the BUrlContext and never deleted, so there is no
need for reference-counting them,
* The BUrlContext itself is now reference counted, and all BUrlRequests
hold a reference to it.

This makes sure using the BHttpAuthentication objects from requests is
thread-safe.

463ffbfd 11-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

First steps towards cookie jar thread-safety

* Change the semantics of the iterators copy constructor and assignment
operator: they now return a new iterator for the same cookie jar (and
same url for the UrlIterator). They don't try to point to the same
position as the copied iterator. The only purpose of these is to write
code such as:

Iterator it = jar.GetIterator();

so having a full copy isn't that useful.

* The per-domain cookie lists are now protected with a read-write lock.
The iterators retain a read lock while they are handling cookies from
that list. They get a write lock when doing Remove. Adding a cookie to
the jar also gets the write lock for the matching list

* Fix a memory leak when adding a new domain-list to the jar failed

* Simplify the declaration of the PrivateHashMap type (it would be
even simpler if HashMap was a public API)

* The domain hashmap is now a SynchronizedHashMap. It is locked as long
as an Iterator or UrlIterator exists, which may be a problem as these
are public APIs. Writing safe iterators for an hashmap with concurrent
accesses is not easy, so the API could be modified to return a list of
domains and a list of cookies for a given domain or URL instead. This
would suit the intended uses just as well.

* The jar now store const cookies, so there is no need to lock them for
access/modification. Updating a cookie is done by replacing it with
another one in the jar (with the same domain and value). There is still
the problem of deleting a cookie while other threads may still access
it, this will be fixed by making cookies BReferenceable.

0e79d0ef 09-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Disable tracing unless built in debug mode.

1cbab031 09-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

More relaxing of cookie-setting rules

* Allow non-secure page to set (but not read) secure cookies
* Allow pages to set cookies for subdomains (but not access them)

d8887186 09-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpTime: don't try to parse timezone

* Cookies sometimes come with the UTC timezone, or no tz info at all.
* No other timezone seems to be used

This allows better matching of cookies which would otherwise be kept
only as session cookies.

f7e7eeba 09-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Limit cookie value size to 4096 bytes.

Too big cookies will make most web servers reject requests.

550f5b1c 06-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix some issues detected by the testsuite

* An empty "expires" field results in a session cookie, rather than
rejecting the cookie altogether
* A page can set a cookie it is not allowed to access (for example in a
subdirectory of where the page is located). Separate IsValidForUrl and
_CanBeSetFromUrl to perform the appropriate checks in each case.
* Limit cookie path to 4096 characters. As a result of the previous
change, a page would be allowed to set a cookie with an aribrarily long
subpath, wasting disk space and RAM by growing hte cookie jar.
* Don't allow path with . or .. elements. These are a source of
confusion and are not needed.
* Reset the cookie fields when parsing failed. This does not matter when
using the cookie jar, but is useful when working directly with
BNetworkCookie.

fed9b96e 06-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Better handling of parse errors in HttpTime

strptime can return non-NULL values even if it only parsed part of the
string. This was sometimes making us use the wrong format. Now we try
all formats and checks how much of the string strptime managed to parse.
We stop when it has parsed a big enough part of it.

6ac7ba84 06-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Sort cookies by path length (longest first)

* This makes sure the most specific cookies are sent first, matching
what other browsers do.

4e14963b 06-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

CID 1108421: BUrl constructor missing initializers.

5eba63a6 05-Jun-2014 Stephan Aßmus <superstippi@gmx.de>

UrlContext: Improved comment

cb1a99c5 05-Jun-2014 Stephan Aßmus <superstippi@gmx.de>

HttpHeaders: Small code refactorings
Also check BList::Add() for success when adding a BHttpHeader.

79852c55 05-Jun-2014 Stephan Aßmus <superstippi@gmx.de>

HttpHeaders: Check assigning self in operator=()

16b8886a 05-Jun-2014 Stephan Aßmus <superstippi@gmx.de>

HttpAuthentication: Check LockBuffer() success...

... in _H() MD5 digest method. Thanks to axeld
for the suggestion.

25881772 04-Jun-2014 Stephan Aßmus <superstippi@gmx.de>

HttpAuthentication: improvements and fixes

* BString::CopyInfo() takes length as second
parameter, not the end-offset. This bug didn't
have any effect, since BString clamps the length.
* ',' is a comma, ':' is a colon.
* When parsing "additionalData" in the loop for
name=value pairs, an empty name is not useful,
continue the loop early.
* "value" may have the length 0, accessing it
with value[0] would not lead to an access violation,
since it just reads the terminating zero (I think),
but it's nicer if the code makes it clear that
value being empty is considered.
* _H() was using a static buffer, in a heavily
multi-threaded situation. I don't think this was
healthy.
* Implement the proposed optimization of using
BString::LockBuffer(). Appending one char at a time
is really bad for peformance. The Base64 encoding/decoding
should really be rewritten as well for similar reasons.

cd805f67 04-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Remove some redundant fields

These were getting out of sync and causing trouble, and they are easy to
compute from existing information.

Fixes some problems detected by the testsuite where the user/password or
the host would sometime disappear from the URL.

b5bde4ad 04-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix bugs identified by the testsuites

* Handle resolving . and .. in path properly
* Make the subtle distinction between empty and unset for the authority,
fragment and query.

e29e0a0d 04-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix Url relative constructor.

Actually get the query from the base URL.

6b6ff33d 24-May-2014 Oliver Tappe <zooey@hirschkaefer.de>

Fix zlib-dependency in libnetapi.

* Fix copy-'n'paste bug that resulted in the zlib.h dependency being
added to no source file at all.

194ce33d 07-May-2014 Jessica Hamilton <jessica.l.hamilton@gmail.com>

DynamicBuffer: remove unneeded size check. CID 604168.

41a9299b 07-May-2014 Jessica Hamilton <jessica.l.hamilton@gmail.com>

BNetEndPoint: fix signedness issues. CID 604169.

4991d3fb 12-Apr-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix build.

cfc4b623 12-Apr-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Network Kit: Prepare for HTTP range requests

* The DataReceived hook gets a position argument, making it possible for
listeners to handle out-of-order data (from two range requests at
different positions, for example)
* Adjust HaikuDepot (only user of the API in our sources)
* Add a copy constructor to HTTPRequest that copies the relevant
parameters from an existing request. Makes it easy to repeat a request
with a different range. Could be useful for restarting downloads, or
paralellizing them.
* Add SetRangeStart, SetRangeEnd calls to HTTPRequest, no implementation
yet. I'm putting all the API changes in this commit as it needs to be
synced with a matching haikuwebkit release.
* All archs must update to HaikuWebkit 1.3.0. Previous versions are
broken by this.

f3259869 10-Apr-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

FileRequest: identify unknown files.

* WebKit testsuite relies on the MIME types being correct, so when the
file doesn't have one, try to identify it.
* May be useful for other apps using FileRequest, anyway.

a8d8e823 09-Apr-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: handle 302 and 307 redirects.

* Makes jamendo.com player work, as their soundfiles are behind a
temporary redirect for load balancing.

943b310c 31-Mar-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Data URLs: fix size computation.

The decoded data is 3/4 the size of base64 encoded, not 4/3.

2e61b6dd 02-Mar-2014 Oliver Tappe <zooey@hirschkaefer.de>

Adjust libnetwork.so to no longer depend on libbe.so.

* Libbe is not available when cross-building the *_bootstrap packages,
so no libnetwork could not be used either, which made building
anything network-related impossible.
* The only code in libnetwork that requires libbe is the notification,
so I moved that over to libbnetapi. Non-C++ applications can't use
the notification calls anyway, as their interface is C++-only.

87400ed1 27-Feb-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Use local time when computing max-age expiration

BDateTime.SetTime_t expects its parameter to be in local time.

d10ecc2c 22-Feb-2014 Julian Harnath <julian.harnath@rwth-aachen.de>

Style fix: add parameter name

* As pointed out by Axel.

c99d7ea4 21-Feb-2014 Julian Harnath <julian.harnath@rwth-aachen.de>

Fix double-free crash in BSecureSocket when cert. verification fails

* BSecureSocket::CertificateVerificationFailed() took a BCertificate
instance by value as parameter.
BCertificate deletes internal data in its destructor. Passing an
object by value creates a copy, so the copy attempted to delete
the internal data again during its destruction.
This caused mail_daemon to crash here when it came across a failed
certificate.

* Fix: pass BCertificate object as reference.

67d06c88 17-Feb-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Httprequest: remove "chunked" from http accept-encoding.

This is useless, chunked support is mandatory in HTTP1.1, and it's not a
content-encoding, but a transfer-encoding, so accept-encoding wouldn't
help anyway.

3e2e0e63 12-Feb-2014 Stephan Aßmus <superstippi@gmx.de>

BHttpRequest: Improve cookie string building loop...

... to avoid some checks. Does it make the code more readable? Not
that it was hard to follow before.

1514eb37 13-Feb-2014 Stephan Aßmus <superstippi@gmx.de>

BHttpRequest: More elegant way to build cookieString

6aeaeade 13-Feb-2014 Stephan Aßmus <superstippi@gmx.de>

BHttpRequest: Small fixes

* Allow BString to find a semicolon more efficiently.
* Replace a dynamic stack allocated array with BStackOrHeapArray
in one more place.

3e358c1f 13-Feb-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: use BStackOrHeapArray

Sometimes we get enough bytes at once from the connection to trigger a
stack overflow. Allocate memory on the heap instead.

6555120f 11-Feb-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

...and also fix a mismatched prototype

gcc2 doesn't seem to notice.

c3d0dd7a 10-Feb-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: support gzip and deflate compression.

* Use the ZlibDecompressor to decompress the data
* Advertise support in accept-encoding

This should make web browsing feel even faster on wesites that support
these compresion schemes. It also fixes some websites (www.ru,
rainloop.net, ...) that serve gzipped resources even to browser not
supporting it.

36b1f55a 11-Feb-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

DynamicBuffer: implement BDataIO

This makes it possible to use it with the ZlibDecompressor.

35480631 23-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix various issues with cookie time.

* This is more tricky than it looks.
* We probably want easier conversions from struct tm to BDateTime, and
direct parsing/formating there.

afdca74d 23-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Make signal handler static

We don't want this method to be exposed in the global namespace!
Also add a note about removing this signal-based solution when our
close() method can be interrupted in other ways.

thanks axel for watching!

d417133e 23-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix cookies with far expiration date.

Some websites set cookies expiring in the (not so) far future, after year 2038.
So, using time_t to store the cookie expiration date won't do. Use the
BDateTime class instead.

This makes goodsearch.com login work again (#10460).

28172726 23-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

urlRequest: interrupt syscalls using a signal

Sometimes an HTTP request would get stuck in a call to connect(). While
our read() and write() implementations are interrupted if you close()
the socket, our connect() isn't. It would nonetheless abort the
connection process, and connect would stay blocked for quite a long
time.

When navigating away from a page, WebKit closes all pending connections,
and in our network backend this also means freeing the request object.
But, the destructor can't be called until the thread has stopped
running, to ensure proper cleanup.

Avoid the lockup in connect by sending a signal (SIGUSR1) to the thread
we want to unlock. This interrupts the syscall, and the thread exits
immediately.

d5c2ed6b 23-Jan-2014 Stephan Aßmus <superstippi@gmx.de>

FileRequest: Better error handling for size mismatches

084a1606 22-Jan-2014 Stephan Aßmus <superstippi@gmx.de>

FileRequest: Fix transfer error detection not working. CID 1162764

840aeab5 22-Jan-2014 Stephan Aßmus <superstippi@gmx.de>

NetEndpoint: Don't forget to close socket in error case. CID 1162792

dae0b385 22-Jan-2014 Stephan Aßmus <superstippi@gmx.de>

DataRequest: Don't leak buffer in error case. CID 1162796

59246cf7 22-Jan-2014 Stephan Aßmus <superstippi@gmx.de>

HttpRequest: Apparently fContext can be NULL. CID 1162798

7e433e7c 18-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

FileRequest: set the mime type early.

WebKit may use the MIME type during incremental loading, so we better
set it before we start feeding the data.

32da3d9d 18-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Cookies: avoid timezone confusion

Cookies date are always in GMT time. Using mktime wrongly converts them
as local time instead. This would lead to cookies expiring too early or
too late.

ab390d3a 17-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Style fixes and allocation checks

9e9ccf69 16-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Yet anoter noSSL build fix.

76b3c7f4 17-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

More noSSL build fixes.

e395fc4f 16-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

NetworkCookieJar: use-after-free, memcpy overwrite

* Add some tracing, std::nothrow and null checks
* The HashString class doesn't like SetTo being called with a substring
of the current key, so use a copy of it instead.

Fixes #6667.

547c1486 16-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Add some missing std::nothrow

... and allocation failure checks.

b70c72a6 16-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix concurrency issues in BSecureSocket

* Use pthread_once to initialize the SSL context once, in a thread-safe
way.
* Do not delete the BIO immediately when closing a connexion, instead
delay this to the destructor. This makes sure the protocol loop is done
running when we do that.
* Instead of creating a new BIO when we reconnect an already used
connection, create the BIO upfront, and reuse it with the new file
descriptor.
* Fix a memory leak: the SSL struct from OpenSSL was never freed, only
the BIO was.

Fixes #10414.

67af469e 16-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix time_t/bigtime_t mixup.

Thanks stippi for noticing!

3db38646 16-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix crash when trying to open a non-existing file.

385a7d89 16-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

More style fixes.

159d1fb6 15-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Style fixes, build fix with OpenSSL disabled.

00b65b2d 15-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

FileRequest: multiple fixes

* Don't crash when opening a symlink, traverse it instead.
* Add a ".." entry to navigate to the parent folder
* Set the encoding to utf-8 in the MIME header, but this doesn't seem to
work.

4e4396fa 15-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix build.

5ebdc799 15-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

SecureSocket: add some certificate support

* Instead of creating an OpenSSL context ofor each socket, use a global
one and initialize it lazily when the first SecureSocket is created
* Load the certificates from our certificate list so SSL certificates
sent by servers can be validated.
* Add a callback for signalling that certificate validation failed, the
default implementation proceeds with the connection anyway (to keep the
old behavior).
* Introduce BCertificate class, that provides some information about a
certificate. Currently it's only used by the callback mentionned above,
but it will be possible to get the leaf certificate for the connection
after it's established.

Review of the API and implementation is welcome, before I start making
use of this in HttpRequest and WebKit to allow the user to accept new
certificates.

9ab54f94 13-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Filerequest: UrlDecode() the request.

Makes things work even if the filename has some URL-disallowed
characters (spaces, utf-8, or otherwise).

b3cc2445 13-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Simplify cookie string-ification code.

3d864cd8 10-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Remove B_PROT_* and related code

Use standard error codes instead.
This allows using error code returned by the underlying functions
directly, and makes it possible to use strerror for debugging. So, we
can also remove StatusString() from the various *Request classes.

5e9a9615 10-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

FileRequest: style fixes

Pointed out by axeld, stippi and waddlesplash. Thanks for watching.

090ba6d0 10-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

FileRequest: implement directory listings.

Use the EPFL (Easily Parsed File Listing) format. This is one of the
formats that WebKit allows for directory listings, and it's easily
parsed and generated.

5bdd4157 05-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

SecureSocket: avoid crash on close

Deleting the BIO while it's still waiting on a read() in another thread
will lead to a crash when the socket is eventually closed. Close the
socket first, so the read() is unlocked, then safely delete the BIO.

7727da7d 03-Jan-2014 Murai Takashi <tmurai01@gmail.com>

Fix mismatching allocation and deallocation

5b53e2e5 02-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: close the connection on Stop()

When calling Stop(), we expect the request thread to exit as soon as
possible. Closing the connection unlocks it from any blocking read() or
write(), avoiding some lockup situations.

2d768aeb 13-Dec-2013 Rene Gollent <rene@gollent.com>

libnetwork: Fix 64-bit debug build.

07d157db 11-Dec-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

BHttpRequest::Result() returns a BUrlResult&.

This overrides BUrlRequest::Result. The returned reference points to a
BHttpResult and can be cast by callers.

824dd0a8 09-Dec-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Reintroduce BUrlResult and add BDataRequest

* BUrlResult is back, with ContentType and Length methods.
* BHttpResult subclasses it and use HTTP header fields to implement
those
* Introduce BDataRequest for "data" URIs. These embed the data inside
the URI, either as plaintext or base64 encoded.

f36e1414 03-Dec-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Cookie Jar: allow setting cookies on "file" URLs.

* These are shared with HTTP cookies set for localhost. We probably want
to split them apart later on, so cookies should store and check the
protocol, additionally to the path and domain.
* Fixes #10195.

dc6d2ef6 26-Nov-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: simplify and optimize receiving loop

* Do not start with a ridiculously small buffer for socket reads.
Sockets return data they have available, instead of trying to fill as
much of the buffer as possible. In some cases a single Ethernet frame
can hold a complete request.
* Remove some looping and try parsing all the request in sequence each
time we receive some bytes.
* Avoid reallocating a temporary buffer each time we read some data from
the socket. Instead, allocate it once, and grow it as needed. Since
servers usually send chunks of equal size, we should get away with one
reallocation on the first chunk.

754bbf48 26-Nov-2013 Jérôme Duval <jerome.duval@gmail.com>

libnetapi: second pass of style cleanup

* remarks from Axel

509755e1 26-Nov-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: remove fOutputBuffer

We can send the data directly to the output socket instead of copying it
into a BString first, at the cost of very slightly less information in
debug output.

97ddf901 25-Nov-2013 Jérôme Duval <jerome.duval@gmail.com>

libnetapi: style cleanup

ed9f4719 25-Nov-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Fix FIONREAD related issues

* Network stack socket module: socket_control(): The FIONREAD argument
is int, not ssize_t.
* Net kit: getsockopt(): R5_SO_FIONREAD: Fix ioctl() argument. Was
taking a pointer of what already was a pointer to the buffer.
* libedit: el_gets(): The FIONREAD argument is int, not long.

4192f44d 25-Nov-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Make sure we never give a NULL context to requests.

Use a default context instead. This allows apps without a context
management to still have cookies and HTTP digest authentication (without
persistence to disk).

First part of fix to #10239 (it also needs changes in WebKit).

dcc56bf7 24-Nov-2013 Michael Lotz <mmlr@mlotz.ch>

BNetEndpoint: Fix socket leak and reduce Accept() overhead.

When using the copy constructor of BNetEndpoint the socket of the
original endpoint gets dup'ed. The Accept() method later directly reset
the fSocket member of the newly created BNetEndpoint to the socket
returned by accept(). The socket dup'ed by the copy constructor was
therefore leaked.

Of course dup'ing the socket and copying the local and remote addresses
is superfluous in the accept case, as these members all get set to new
values. To reduce that overhead there is now a new private constructor
that directly gets the final socket and remote and local address.

5c4dd604 18-Nov-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Remove debug print.

0bc61543 18-Nov-2013 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Style fixes.
Style fixes pointed out by Axel. I'm rusty, and it shows.
Hope I got it right.
Also moved get_route() into BPrivate.

41d42066 18-Nov-2013 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Added family parameter to the GetRoutes() API.
Moved common code to a private file.

ba3f67bf 18-Nov-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

FileRequest: make sure we're dealing with a file.

Trying to Read from a directory results in an error code, but we also
missed that because an unsigned variable was used to store the result.

Fixes #10210.

905f910e 16-Nov-2013 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Network route API: Second try (WIP).
Implement BNetworkRoster::GetRoutes() and BNetworkInterface::GetRoutes().
Also implement BNetworkInterface::GetDefaultGateway().
There is code duplication at the moment, and the api only supports IPV4.

0074cea3 15-Nov-2013 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Implement BNetworkRoster::GetNextRoute()
Implement BNetworkRoster::GetNextRoute() and used it in Network preflet.

cb7df3b1 15-Nov-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Update webkit and cmake packages

* Some changes required in WebPositive to store the cookies on disk

564e2566 15-Nov-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Various fixes to Services Kit

* Remove useless dummy protocol loop in UrlRequest
* Stop HTTP requests before deleting the socket and other things the
loop may still be using
* Deletion of items from the authentication map wasn't working
* Remove some debug traces

c2c1ce1d 04-Nov-2013 John Scipione <jscipione@gmail.com>

Style fixes to HttpRequest

f1e63b05 04-Nov-2013 John Scipione <jscipione@gmail.com>

Style fixes to HttpForm

9ce2f7e3 28-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Improve HTTP authentication support.

The authentication state is stored (in a hash map, using the domain+path
as a key) in the UrlContext class. It can then be reused for multiple
requests to the same place. We also lookup stored authentications for
parent directories and stop at the first we find.

Authentication state is not stored on disk (unlike cookies), and there
can only be one for each domain+path.

b7617ddd 25-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Network Cookie Jar: implement assignment operator.

This change is needed for implementing cookie persistence in Web+ using
the network kit backend.

The current implementation requires the user to unarchive the cookie
jar, then hand it over to the BUrlContext which will copy it to its own
field. This makes the code simpler, but maybe doing a complete copy
(with all the cookies) is an heavy operation and could be avoided.

c52c444c 24-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Add file: protocol handler.

f6782201 24-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Move UrlResult to HttpResult

* Remove the fRawData field, as handling it is too complicated (it's
not easy to have proper copy semantics on a BDataIO) and it's not used
anyway, as the listener DataReceived call is enough to get the data and
handle it.
* All the remaining fields are HTTP-only, so rename the class to
HttpResult and attach it to HttpRequest instead of UrlRequest.

b3d13a00 19-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Network Kit: Coverity scan review and fixes

CID 1108353, 1108335: memory leak.
CID 610473: unused variable.
CID 1108446, 1108433, 1108432, 1108419, 1108400, 991710, 991713, 991712,
610098, 610097, 610096, 610095: uninitialized field
CID 1108421: unused field

Change the ownership of the result for Url/HttpRequests. The request now
owns its result and you either access it by reference while the request
is live, or copy it to keep it after the request destruction. To help
with that, get BUrlResult copy constructor and assignment operator to
work.

Performance issue: copying the BUrlResult also copies the underlying
BMallocIO data. This should be shared between the BUrlResult objects to
make the copy lighter. The case of BUrlSynchronousRequest is now
particularly inefficient, with at least 2 copies needed to get at the
result.

25b034e9 17-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: docs and memory management fixes

* Now takes ownership of headers, form data and input data
* Split Set* and Adopt* methods to help with proper use of this (Set
does a copy)
* Write documentation.

ced0e0be 16-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

BUrl: use a regex to parse URLs

* The RFC provide a regular expression for URI parsing, so just use it.
* Allows parsing URIs with missing components (no scheme or authority)
* This allows to parse relative URLs as expected
* Can also handle things such as data: or mailto:
* Also more fixes to handling of incomplete URIs, some flags weren't
always set to the right values.

This gets Windows Live Mail (or is it called Outlook?) working, with
some other fixes on WebKit side.

f289aa4c 16-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

BNetworkCookie: Allow cookies without a path

* They will be valid for the whole domain
* login.live.com cookie test now works

400153eb 16-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

BUrl: parse URLs using a regular expression.

* RFC3986 provides the regexp to parse URIs properly
* Code is simpler and safer
* Avoids an infinite loop when trying to parse some data: URIs

5faf4d55 15-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix max-age setting

* It would not work for cookies set to expire tomorrow or later, since
setting the time in a BDateTime does not overflow to the date.
* The BDateTime API could be improved to make this look nicer.

7895042a 15-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Service Kit: Fix behavior in release mode

* Code put inside an ASSERT will not be executed at all in release mode.
* In release builds, don't print any messages to the standard output.

bb1d0adc 15-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

BUrl: fix handling of @ character

* @ is a separator (between user:password and host) only if there are
no slashes before it
* All slashes in user and password should be urlencoded (as well as any
@ and :)
* On the other hand, it's possible to have @ as part of an URL path or
query. An example is Google Maps.

Gets Google Maps working.

7696f7dd 15-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: allow custom http methods

* The W3C XmlHttpRequest testsuite likes to use "CHICKEN" as a method.
* Also add constants for all specified methods in HTTP 1.1.

f6f14c5d 15-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Make BUrlProtocolAsynchronousListener inherit BUrlProtocolListener

* With so long class names, there's no way I'm going to follow the 64
char limit on commit headlines.
* The class share the same API, so having them separate is not very
useful.
* This makes it possible to use the same listener in either synchronous
or asycnhronous mode (or both, for different requests)

c9d31eee 14-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

More cookie fixes

* Add some error handling in NetworkCookie and don't add broken cookies
(or should I say crumbs?) to the cookie jar
* More control on the path and domain, as well as the expiration time

We now pass Opera cookie testsuite functionality tests, as well as some
of the negative tests (we even do better than curl). Not going further
right now as this works well enough for positive cases and most
security/privacy issues are fixed (cross domain and cross path cookie
setting or spying).

b7d85d66 11-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

fix build.

f9d987ae 11-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: put cookies in a single header entry

* Http spec says headers can be split when they are comma separated
* However, cookies are semicolon separated, so it is not acceptable to
split them.
* We will want to implement some way to limit the cookie header entry
size, as servers have a limit on what they can accept (usually around 4K
characters). The RFC also says we don't need to remember more than 20
cookies per domain.

eab89314 10-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

NetworkCookie: fix date validity check

* January 1st 1970 is a perfectly valid expiration date for a cookie,
and shouldn't magically turn it into a session cookie.

185471c8 10-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: follow 302 redirects by default.

a5ac24f0 10-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

BUrl: add a Redirect method

* This takes a relative path as a parameter, and modifies the object to
point to the given location.
* '..' is not handled yet, and will be sent as-is to the server.
* Makes it possible to follow more types of 302 redirects

In particular, I can now run the tests from Opera's testsuite
(testsuite.opera.com), which shows I have more work to do on cookie
handling.

0e030f22 09-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Allow cookies domain to not start with a dot

* The dot was mandatory in older RFCs, but the new RFC6265 disallow it.
* Both schemes are used around the web, so we allow them both.

It's possible to login to mail.google.com again.

8ca6eeb7 09-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

HttpRequest: missing fields initializations

* Some fields weren't initialized, leading to random crashes later on
* Remove the enum that was used for protocol options
* Use a single field to track the request state, instead of separate
booleans.

a5826aaf 08-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Don't send a chunked transfer terminator for non-chunked transfers.

* Fixes oversight from previous change.
* Thanks hamishm for watching !

780967d8 08-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Cleanup and fix cookies handling

* The cookie jar iterator now use a BObjectList instead of a BList
* Add a convenience method to the cookie jar to add a cookie by BUrl
and raw cookie string.
* Remove some methods in BNetworkCookie that could lead to invalid
cookies (cross-domain or with no domain at all).
* Make the cookie parsing able to report errors
* Fix off-by-one error in domain cookies validation.

afd547b3 08-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Refactor UrlRequest/UrlProtocol in the Service Kit

* Remove the BUrlRequest class, which was only delegating work to
BUrlProtocol and subclasses
* Rename BUrlProtocol to BUrlRequest, and BUrlRequestHttp to BHttpRequest
* Creating a request is now done through the BUrlProtocolRoster. For
now there is just a static MakeRequest method, this will be completed
when we get to actually allowing add-ons to provide different request
handlers.

This allows cleanup of the API for requests:
* Remove the universal SetOption method with constants, and have
dedicated setters for each protocol option.
* Setters can now have multiple parameters, for example you can give
BHTTPRequest a BDataIO and a known size
* In this case, the BHttpRequest will not use HTTP chunked transfers,
which were always used before and made most servers unhappy (tested and
failed with lighttpd, google accounts and github).

49e7165f 04-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Use ssize_t to allow returning a negative error code

38fa81bf 03-Oct-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Remove B_COMMON*_DIRECTORY and kCommon*Directory constants

* This does intentionally break source compatibility, so that a review
of concerned code is forced.
* Binary compatibility should be maintained in most cases. The values
of the constants for the writable directories are now used for the
writable system directories. The values for the non-writable
directories are mapped to "/boot/system/data/empty/...", an empty or
non-existent directory, so that they will simply be skipped in search
paths. Only code that explicitly expects to find something in a
B_COMMON_* directory, will fail.

4b7e2196 03-Oct-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Remove /boot/common for good

* Remove support for the "common" installation location from packagefs,
package kit, package daemon, package managers.
* Rename the B_COMMON_*_DIRECTORY constants referring to writable
directories to B_SYSTEM_*_DIRECTORY.
* Remove/adjust the use of various B_COMMON_*_DIRECTORY constants.
I'm sure some occurrence still remain. They can be adjusted when the
remaining B_COMMON_*_DIRECTORY constants are removed.

bf9b153f 03-Oct-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Force AF_INET when resolving addresses

* The default is to use IPv6 addresses, but these don't quite work yet
in Haiku.
* Also, some debug messages improvements and fix a crash when the
payload has % inside it (parsing it as a printf string isn't such a
good idea)

9f81ca83 26-Sep-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Merge branch 'package-management'

Conflicts:
src/preferences/network/Jamfile


a3c07906 26-Sep-2013 Axel Dörfler <axeld@pinc-software.de>

BNetworkAddress: accept NULL link address strings.

cf70d345 12-Sep-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Merge remote-tracking branch 'haiku/master' into package-management

This reverts 8f7f28a7c3db28711920ad5d15df401fae90bcf1 (OpenGL: Upgrade
to
Mesa 9.2).

Conflicts:
build/jam/BuildFeatures
build/jam/HaikuImage
build/jam/OptionalPackages
build/scripts/build_cross_tools_gcc4
src/add-ons/opengl/swpipe/Jamfile
src/apps/diskusage/Jamfile
src/kits/tracker/ContainerWindow.cpp
src/kits/tracker/DeskWindow.cpp
src/kits/tracker/Jamfile


a8dd17c9 01-Sep-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

UrlProtocolHttp: parse received cookies

* We didn't do anything with cookies received from the server, they are
now automatically added to the cookie jar.
* Also make sure the UrlContext (which holds the cookie jar) is
forwarded from UrlRequest to UrlProtocol when it gets set.

this gets cookies working in Service Kit-based WebKit.

2ec188b9 27-Aug-2013 Adrien Destugues <pulkomandy@gmail.com>

Fix thread safety issue in chunked http transfers.

* The use of a static variable for storing the chunk size made it shared between all instances of BUrlProtoclHttp.
* Inline the function at the single place where it is used, and allocate the variable on the stack instead.

The whole receiving loop should be split into chunked and non-chunked variants to improve code readability.

225b6382 05-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Support building most system libraries for secondary arch

Also adjust the HaikuImageGet[Private]SystemLibs rules to support to
return the library targets matching the current architecture.

7bd562ab 04-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

lib{network,package,shared,agg,icon}: secondary arch support

7e78b434 08-Jul-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Merge remote-tracking branch 'haiku/master' into package-management

Conflicts:
build/jam/HaikuImage
build/jam/OptionalPackageDependencies
build/jam/OptionalPackages
build/scripts/build_cross_tools_gcc4
src/add-ons/translators/icns/Jamfile
src/add-ons/translators/jpeg/Jamfile


ebb78dd9 13-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Update openssl package

Also use the new build feature rules

89e83cf6 15-May-2013 Philippe Houdoin <philippe.houdoin@gmail.com>

Style cleanup and fix a possible endless loop

44908fe8 15-May-2013 Philippe Houdoin <philippe.houdoin@gmail.com>

if_nameindex() wasn't retrieving interface index. Fixed #9770

4ab260da 21-Apr-2013 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Don't leak the socket.
BNetworkRoster::AddInterface and RemoveInterface did not close
the socket.

88e9c096 14-Apr-2013 Alexander von Gluck IV <kallisti5@unixzen.com>

libnetwork: Check for ipv4 flag in resolv.conf

* Add option for forced IPv4 resolution.
* Helps with #8293
* Very slightly modified patch by donn

04b5e12f 13-Mar-2013 Alexander von Gluck IV <kallisti5@unixzen.com>

Network Kit: Fix parallel build

* HttpAuthentication.cpp wasn't in ssl grist
resulting in unmet dependencies. #9523
* md5.c only being used when ssl wasn't available
was kind of spaghetti logic. These changes make
this more obvious.

2675e31a 10-Feb-2013 Hamish Morrison <hamishm53@gmail.com>

BUrlRequest: fix various issues

* Remove unused headers interface from BUrlProtocol
* Change confusing function names
* Style fixes and whitespace cleanup

64a1f5a0 07-Feb-2013 Hamish Morrison <hamishm53@gmail.com>

NetworkCookieJar: various small fixes and updated tests

c8bc2183 03-Feb-2013 Hamish Morrison <hamishm53@gmail.com>

NetworkCookie: fix domain/path matching, and validity checks

33462ef5 31-Jan-2013 Hamish Morrison <hamishm53@gmail.com>

NetworkCookie: bring SetCookie parsing in line with RFC 6265

2db5d2bc 30-Jan-2013 Hamish Morrison <hamishm53@gmail.com>

NetworkCookie: remove unused cookie attributes and add HttpOnly

05f42aab 30-Jan-2013 Hamish Morrison <hamishm53@gmail.com>

NetworkCookie: set the default path according to RFC 6265

2e7b5f9e 26-Jan-2013 Hamish Morrison <hamishm53@gmail.com>

NetworkCookieJar: don't leak a new cookie if it has expired

fef7dd70 25-Jan-2013 Hamish Morrison <hamishm53@gmail.com>

HttpHeaders: header field names are case insensitive.

Whitespace before and after tokens should be ignored.

02deec64 20-Jan-2013 Hamish Morrison <hamishm53@gmail.com>

BSecureSocket: Read and Write should return 0 for closed sockets.

f00edeb7 12-May-2012 Niels Sascha Reedijk <niels.reedijk@gmail.com>

Automatically pick port 443 for HTTPS

4e607e1a 12-May-2012 Niels Sascha Reedijk <niels.reedijk@gmail.com>

Enable HTTPS connections.

Using more modern network classes:
* BNetworkAddress instead of BNetAddress
* BSocket and BSecureSocket instead of BNetEndpoint

d1b6afe6 11-May-2012 Niels Sascha Reedijk <niels.reedijk@gmail.com>

Re-enable the services kit from GSOC 2010

* Use a public domain MD5 implementation when the OpenSSL one is not available
* No functional changes

f0cacbb3 08-Dec-2012 Ingo Weinhold <ingo_weinhold@gmx.de>

OptionalBuildFeatures -> BuildFeatures, make use of new rules

Got rid of X86_ONLY and friends in HaikuImage, FloppyBootImage, etc.
Instead we use build feature specification annotated lists with
FFilterByBuildFeatures (either explicitly or implicitly where passing
the list directly to the image rules).

I just translated the variables to the respective annotatation in most
cases, though in some cases different annotation would be more correct
(e.g. for the OpenGL stuff).

Provides a simple framework for addressing #3798. The interested reader
may add the build features and add/adjust the annotations accordingly.

f16cf073 18-Aug-2012 Alex Smith <alex@alex-smith.me.uk>

CID 714526: Operands don't affect result.

Incorrect check of in_addr_t (uint32_t) against (unsigned long)-1
would never be true.

660e7dd1 18-Aug-2012 Alex Smith <alex@alex-smith.me.uk>

CID 714542: Unintentional sign extension to 64 bits.

Fixed by changing type of val from u_long to u_int32_t. val only gets
passed to htonl which takes a uint32_t, so no need for it to be u_long.

3fed1a15 05-Aug-2012 Alex Smith <alex@alex-smith.me.uk>

Get app_server working on x86_64.

With this commit, app_server now compiles and runs at boot! Nothing
particularly interesting happens, just the blue background and a mouse
pointer. Remote backends are broken and not compiled in, see #8834.
Note that it won't be possible to build this quite yet, need to get
the FreeType package uploaded.

6eb2e6b4 28-Apr-2012 czeidler <haiku@clemens-zeidler.de>

Use the timeout in poll.

e2c30bd6 21-Nov-2011 Axel Dörfler <axeld@pinc-software.de>

Forgot to include the Jamfile in the commit.

* The socket API is now actually available.

0e478f5a 21-Nov-2011 Axel Dörfler <axeld@pinc-software.de>

Added experimental version of a Socket API with SSL support.

* Each class has a Socket() method to retrieve the underlaying file descriptor
to be able to do the more advanced stuff, if necessary.
* A server socket is yet missing, but the rest is pretty much covered.

f558ec13 02-Nov-2011 François Revol <revol@free.fr>

Fix header and class name.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43098 a95241bf-73f2-0310-859d-f6bbb57e9c96

7d7b9632 09-Oct-2011 Michael Lotz <mmlr@mlotz.ch>

* Remove the BNetworkDevice::AddPersistentNetwork() again and instead introduce
BNetworkRoster::{Count|GetNext|Add|Remove}PersistentNetwork() as it fits
better (thanks Philippe for the heads up).
* Implement the backend for these functions in the net_server and also move
conversion of the wireless_network based format into the settings based format
there.
* Implement removal of a network from the settings and make adding a new network
with the same name replace the old one instead of just adding multiple ones.
Might need to change this in the future depending on how we want to handle
multiple networks with the same name (i.e. distinguish based on BSSID or
similar).
* Fix apparent oversight that caused configured networks _not_ to be used in the
auto join attempt.
* Remove auto joining open networks. I've been bitten by that more than once now
because we happen to have an open network in the neighbourhood that I now
accidentally used to transfer quite a bit of (unencrypted) stuff before
noticing... In the future, one will instead have to explicitly join an open
network once and store that config. Note that the driver will actually still
auto-associate with open networks due to how things are set up currently.
Note also that the auto join will fire join requests whenever there's a
disassociation event, so you might see spurious join dialogs when the
wpa_supplicant actually just re-establishes the connection.
* Make join requests async again. Instead of waiting for a synchronous reply of
the wpa_supplicant we instead return success when the request has been sent.
While the API call might still be made synchronous again in the future, the
net_server should really not block on an external application. In the case of
the wpa_supplicant we would otherwise deadlock when using the new
*PersistentNetwork() API after a successful join, and in other cases we might
just unacceptably delay other calls.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42816 a95241bf-73f2-0310-859d-f6bbb57e9c96

a1b98367 07-Oct-2011 Michael Lotz <mmlr@mlotz.ch>

Add a way to add persistent (configured) wireless_networks that will eventually
be stored by the backend in the net_server. I put it in BNetworkDevice because
that is where network enumeration is done as well, but I'm not sure that it fits
there particularly well.
Since BNetworkDevice::GetNetwork() directly interfaces with the driver and gets
the networks from scan results, such persistent networks don't yet show up in
those enumerations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42807 a95241bf-73f2-0310-859d-f6bbb57e9c96

efa3bc3e 19-Aug-2011 Axel Dörfler <axeld@pinc-software.de>

* Now reads the irs.conf from /boot/common/settings/network/irs.conf instead of
/etc/irs.conf. Untested.
* There are more config files, but I'm not even sure what they are used for.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42643 a95241bf-73f2-0310-859d-f6bbb57e9c96

24df6592 11-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Merged signals-merge branch into trunk with the following changes:
* Reorganized the kernel locking related to threads and teams.
* We now discriminate correctly between process and thread signals. Signal
handlers have been moved to teams. Fixes #5679.
* Implemented real-time signal support, including signal queuing, SA_SIGINFO
support, sigqueue(), sigwaitinfo(), sigtimedwait(), waitid(), and the addition
of the real-time signal range. Closes #1935 and #2695.
* Gave SIGBUS a separate signal number. Fixes #6704.
* Implemented <time.h> clock and timer support, and fixed/completed alarm() and
[set]itimer(). Closes #5682.
* Implemented support for thread cancellation. Closes #5686.
* Moved send_signal() from <signal.h> to <OS.h>. Fixes #7554.
* Lots over smaller more or less related changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42116 a95241bf-73f2-0310-859d-f6bbb57e9c96

20270638 07-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

* Added TODOs where IsDataPending() is called incorrectly. Since it has stupid
semantics, I'd recommend introducing an _IsDataPending() with sane semantics
and use that.
* IsDataPending() Added TODO regarding possible overflow.
* SetTimeout(): Added TODO regarding consistency.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42009 a95241bf-73f2-0310-859d-f6bbb57e9c96

ace79831 07-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42008 a95241bf-73f2-0310-859d-f6bbb57e9c96

ddf57b6c 18-Feb-2011 Axel Dörfler <axeld@pinc-software.de>

* Reverted back to the original version of BNetworkAddress::SetAddress();
in_addr_t is now in network endian again. Thanks, Philippe!
* Made SetToLoopback(), and SetToLocal() a bit more useful (although the latter
isn't implemented yet).
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40552 a95241bf-73f2-0310-859d-f6bbb57e9c96

51974c5d 16-Feb-2011 Oliver Tappe <zooey@hirschkaefer.de>

Make libbind buildable in DEBUG mode, too:
* fix strange overloads of functions via macros that doesn't work
(and I can't see how it ever would, but what the heck)
* don't force-define DEBUG in libbind/resolv, follow our build system's
idea of DEBUG instead
* fix libbind/isc/tree.c expecting DEBUG to contain a string

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40528 a95241bf-73f2-0310-859d-f6bbb57e9c96

c3355923 11-Feb-2011 Axel Dörfler <axeld@pinc-software.de>

* getaddrinfo() now detects at runtime if IPv6 is available, and will prefer
IPv6 interfaces when AF_UNSPEC is set.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40456 a95241bf-73f2-0310-859d-f6bbb57e9c96

448e9976 11-Feb-2011 Axel Dörfler <axeld@pinc-software.de>

* We need to convert the endian of the passed in IPv4 address.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40453 a95241bf-73f2-0310-859d-f6bbb57e9c96

3cb2e2a3 11-Feb-2011 Axel Dörfler <axeld@pinc-software.de>

* Fixed retrieving the port from IPv6 addresses; ie. we now support the
"[addr]:port" notation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40449 a95241bf-73f2-0310-859d-f6bbb57e9c96

0e4bbb1b 11-Feb-2011 Axel Dörfler <axeld@pinc-software.de>

* No need to set the family there, the domain is what matters.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40446 a95241bf-73f2-0310-859d-f6bbb57e9c96

cf93c8c7 10-Feb-2011 Axel Dörfler <axeld@pinc-software.de>

* FindAddress(), and FindFirstAddress() now return -1 on failure.
* FindFirstAddress() did actually not specify the family to find, so that the
stack did not have the opportunity to find anything else but the first
address.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40421 a95241bf-73f2-0310-859d-f6bbb57e9c96

96a8b92d 05-Feb-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

cleanup of some bad language and style within bitfield counting optimization as per axel; made addr_bitcount static

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40362 a95241bf-73f2-0310-859d-f6bbb57e9c96

0d6862d9 04-Feb-2011 Alexander von Gluck IV <kallisti5@unixzen.com>

added optimized gcc builtin bit population count as per Axel's recommendation; the optimized function might be used for the ipv6 netmask length as well.. i just don't want to touch that double for loop without *LOTS* of testing; lets hope this isn't my first build-breaker

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40360 a95241bf-73f2-0310-859d-f6bbb57e9c96

0a8ad865 09-Dec-2010 Axel Dörfler <axeld@pinc-software.de>

* Implemented operator<() for AF_LINK addresses as well; now NetworkStatus
actually marks the currently associated network.
* Removed unused code from NetworkDevice.cpp - doesn't look like we're going
to use it anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39793 a95241bf-73f2-0310-859d-f6bbb57e9c96

c4165266 09-Dec-2010 Axel Dörfler <axeld@pinc-software.de>

* Parse the additional information elements the station sends in order to
retrieve the WLAN cipher/key configuration. Might not work perfectly yet; so
far I've only seen WPA2, and WPA networks.
* Have wlan_test show this extra info.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39792 a95241bf-73f2-0310-859d-f6bbb57e9c96

8faecc1d 08-Dec-2010 Axel Dörfler <axeld@pinc-software.de>

* Added ability to parse link level addresses.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39779 a95241bf-73f2-0310-859d-f6bbb57e9c96

d5a09773 08-Dec-2010 Axel Dörfler <axeld@pinc-software.de>

* Fixed size of sdl_type/sdl_e_type, the former is only a uint8, and the latter
a uint16.
* sdl_e_type is stored in network order now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39778 a95241bf-73f2-0310-859d-f6bbb57e9c96

440d0e61 08-Dec-2010 Axel Dörfler <axeld@pinc-software.de>

* Pretty much completed BNetworkDevice. The only parts missing are GetMediaAt(),
and parsing the extra station data to retrieve the authentication details.
Comments welcome.
* NetworkStatus should now mark the currently associated network (if any).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39774 a95241bf-73f2-0310-859d-f6bbb57e9c96

1691b94f 01-Dec-2010 Axel Dörfler <axeld@pinc-software.de>

* Implemented link level setters.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39695 a95241bf-73f2-0310-859d-f6bbb57e9c96

19b4490f 01-Dec-2010 Axel Dörfler <axeld@pinc-software.de>

* The constructors weren't defined in declaration order.
* Unflatten() will now check whether the size of the buffer was large enough
to hold a valid address.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39693 a95241bf-73f2-0310-859d-f6bbb57e9c96

1d8e6ee8 30-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Untested work-in-progress. Actually cannot work because of missing
functionality in BNetworkAddress.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39687 a95241bf-73f2-0310-859d-f6bbb57e9c96

e6cec983 29-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* BNetworkAddress isn't really BArchivable material, switched to BFlattenable
instead.
* Also actually implemented the serializing functionality this time, as usual
completely untested, though :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39677 a95241bf-73f2-0310-859d-f6bbb57e9c96

de739bbe 24-Nov-2010 Philippe Houdoin <philippe.houdoin@gmail.com>

Factorized a bit more, and update fStatus in some place it was missing
but make sense. Please review.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39612 a95241bf-73f2-0310-859d-f6bbb57e9c96

3342fa76 24-Nov-2010 Philippe Houdoin <philippe.houdoin@gmail.com>

Make SetToWildcard() actually set address to wildcard one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39606 a95241bf-73f2-0310-859d-f6bbb57e9c96

1c9ad669 24-Nov-2010 Philippe Houdoin <philippe.houdoin@gmail.com>

Set AF_INET broadcast sockaddr length.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39605 a95241bf-73f2-0310-859d-f6bbb57e9c96

60fed7e0 23-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Moved the shared part of NetServer.h into a new private header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39597 a95241bf-73f2-0310-859d-f6bbb57e9c96

2bd61a6f 23-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Added Index() method, was not even declared yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39593 a95241bf-73f2-0310-859d-f6bbb57e9c96

2087545c 23-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Added methods to manipulate routes.
* Added AutoConfigure() method.
* Implemented missing Index() method.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39592 a95241bf-73f2-0310-859d-f6bbb57e9c96

2977e788 23-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Added alternatives to AddInterface()/RemoveInterface() that take the name
of the interface instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39591 a95241bf-73f2-0310-859d-f6bbb57e9c96

6a758693 23-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Added SetAddress() methods for IPv4, and IPv6 addresses.
* Improved API.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39590 a95241bf-73f2-0310-859d-f6bbb57e9c96

223cae9f 10-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Implemented IsEthernet(), and IsWireless() temporarily, but this will do
for some drivers at least.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39393 a95241bf-73f2-0310-859d-f6bbb57e9c96

d72ede75 10-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* We now use a FreeBSD compatible ifmediareq structure for SIOCIFMEDIA, and
SIOCSIFMEDIA.
* Made sure that the two media ioctls are actually forwarded to the driver.
* Added NetworkDevice.cpp to the build.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39389 a95241bf-73f2-0310-859d-f6bbb57e9c96

45939109 27-Oct-2010 Stephan Aßmus <superstippi@gmx.de>

Patch done by Christophe Huriaux as part of GSoC 2010 "Services Kit" project:
Integrated the classes in the Network Kit (libbnetapi.so). Only the foundation
classed BUrl, BUrlContext, BNetworkCookie, BNetworkCookieJar and the private
HttpTime code is currently compiled. The BUrlProtocol currently contains some
misplaced BUrlProtocolHttp specific stuff, and the HTTP stuff itself has a
dependency on libcrypto and should live in an add-on instead. I've sprinkled
some TODOs in the code, and I've done some renaming compared to the last
version of the GSoC patch. Any help to bring this further along is appreciated.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39161 a95241bf-73f2-0310-859d-f6bbb57e9c96

1d56eab0 25-Oct-2010 Axel Dörfler <axeld@pinc-software.de>

* Work in progress network API changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39147 a95241bf-73f2-0310-859d-f6bbb57e9c96

28de0904 18-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Added non-const sockaddr casts.
* Automatic whitespace cleanup.
* This also fixes the build; I wanted to commit this earlier.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38237 a95241bf-73f2-0310-859d-f6bbb57e9c96

a690e259 17-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* BNetworkInterface must adopt the family from the address, if possible. This
should fix "ifconfig" for IPv6.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38177 a95241bf-73f2-0310-859d-f6bbb57e9c96

97ef73e0 12-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Added convenience methods FindAddress(), and FindFirstAddress().
* Added BNetworkInterfaceAddress::Destination() as synonym for Broadcast()
(depending on the configuration, it could be either one).
* Media() will now return -1 in case of an error.
* Added "const" where it makes sense.
* Added convenience functions for AddAddress(), and RemoveAddress() that only
take the actual address.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38060 a95241bf-73f2-0310-859d-f6bbb57e9c96

530f5483 12-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Implemented AddInterface(), and RemoveInterface().
* Added comment explaining why using AF_INET is not really a good idea.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38057 a95241bf-73f2-0310-859d-f6bbb57e9c96

b85c513e 12-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* B_NO_ADDRESS_RESOLUTION now implies not setting AI_ADDRCONFIG, as that flag
doesn't really make sense in this case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38056 a95241bf-73f2-0310-859d-f6bbb57e9c96

31a49a69 12-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Added support for printing AF_LINK addresses.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38055 a95241bf-73f2-0310-859d-f6bbb57e9c96

cd8ca1e5 12-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Improved error reporting.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38040 a95241bf-73f2-0310-859d-f6bbb57e9c96

836c43f2 12-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Factored out a BNetworkAddressResolver from BNetworkAddress, that also allows
to iterate over all possible addresses, as suggested privately by Rene.
* Added flags to the resolving methods that allow more control over the
addresses returned.
* Added setters to BNetworkAddress that accept a service name instead of port
number, renamed PortName() to ServiceName().
* Made the sockaddr* cast operators return a const sockaddr as it was supposed
to be, although I should probably add non-const ones as well.
* This also simplified the code somewhat.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38039 a95241bf-73f2-0310-859d-f6bbb57e9c96

23f20732 11-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Implemented SetToMask(), and added PrefixLength() method, mostly reusing
code from ifconfig.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38026 a95241bf-73f2-0310-859d-f6bbb57e9c96

9de96be3 11-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Added methods to get/set the media/metric.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38024 a95241bf-73f2-0310-859d-f6bbb57e9c96

54b6869f 11-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Forgot to implement the sockaddr* cast operator.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38023 a95241bf-73f2-0310-859d-f6bbb57e9c96

cb7ce9a3 09-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Renamed DescriptorCloser to FileDescriptorCloser as suggested by Ingo.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37995 a95241bf-73f2-0310-859d-f6bbb57e9c96

f65256c2 09-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Fixed a bug in BNetworkRoster::GetNextInterface() that caused an endless loop
and always returned the first interface.
* Fixed bug #6436 by using the new BNetworkRoster functionality.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37994 a95241bf-73f2-0310-859d-f6bbb57e9c96

719c4707 09-Aug-2010 Fredrik Holmqvist <fredrik.holmqvist@gmail.com>

Header defines the default value for Archive's second param. Fixes build bustage.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37992 a95241bf-73f2-0310-859d-f6bbb57e9c96

c2808ea7 09-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Adapted API as needed, and implemented most of the C++ API - it's completely
untested at this point, though.
* Will port ifconfig, NetworkStatus, and the Network preferences application
later in order to test the API.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37988 a95241bf-73f2-0310-859d-f6bbb57e9c96

969d58ac 09-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37985 a95241bf-73f2-0310-859d-f6bbb57e9c96

bf58f252 06-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* Adapted headers after Stippi's suggestions - I won't add the const until I
know how I implement that function :-)
* Cleaned up libbnetapi.so Jamfile, removed non-Haiku target code.
* Added empty files to the build to see that the headers are compiling.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37942 a95241bf-73f2-0310-859d-f6bbb57e9c96

f7e1c6f1 29-Jul-2010 Axel Dörfler <axeld@pinc-software.de>

* Fixed a memory leak in if_nameindex() - it never freed the buffer that
stored the interfaces from SIOCGIFCONF.
* Fixed iteration over the ifreq structures; the returned structure per
interface may not be equal to the size of ifreq.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37802 a95241bf-73f2-0310-859d-f6bbb57e9c96

852b0119 09-Jul-2010 Rene Gollent <anevilyak@gmail.com>

Fix missing space.
Fix file being in CR/LF format.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37440 a95241bf-73f2-0310-859d-f6bbb57e9c96

b37fa18b 08-Jul-2010 Philippe Houdoin <philippe.houdoin@gmail.com>

Fixed Size() and BytesRemaining() semantics, which was broken.
Revert r33437, which was missing the root cause.
Spotted by Christophe Huriaux, thanks.
And welcome in contributors list!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37437 a95241bf-73f2-0310-859d-f6bbb57e9c96

87e256c2 15-Apr-2010 Axel Dörfler <axeld@pinc-software.de>

* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36299 a95241bf-73f2-0310-859d-f6bbb57e9c96

fe735fc4 24-Mar-2010 Axel Dörfler <axeld@pinc-software.de>

* As long as we don't support IPv6, we shouldn't prefer it when AF_UNSPEC is
used in getaddrinfo() (this solves "localhost" being resolved to ::1 by
default).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35942 a95241bf-73f2-0310-859d-f6bbb57e9c96

e054bfbf 28-Jan-2010 Axel Dörfler <axeld@pinc-software.de>

* Added missing IPv6 defines and in6addr_any, in6addr_loopback exports.
* This should get most IPv6 applications to link (they just can't open IPv6
sockets yet, as the protocol is missing).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35326 a95241bf-73f2-0310-859d-f6bbb57e9c96

e629da4a 11-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Changed parameter back to socklen_t (which follows POSIX, but not RFC 2553;
obviously POSIX got it wrong, as socklen_t hardly makes sense here).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34004 a95241bf-73f2-0310-859d-f6bbb57e9c96

119371a5 11-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Rewrote arpa/inet.h header, also dropping the __inet* defines.
* Resurrected the __inet* prefix for binary compatibility with older Haiku
versions - this could be a temporary solution in case we want to export the
inet_* functions not just as weak symbols. In that case, the __inet* versions
would be dropped.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34003 a95241bf-73f2-0310-859d-f6bbb57e9c96

b299a6e9 10-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Moved resolv.conf to /boot/common/settings/network/.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33989 a95241bf-73f2-0310-859d-f6bbb57e9c96

d6ac23c0 10-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Moved the location of the "hosts" file to
B_COMMON_SETTINGS_DIRECTORY/network/hosts.
* Moved the location of the "services" file to
B_COMMON_DATA_DIRECTORY/network/services.
* Removed headers I forgot to remove.
* Made getnameinfo() use socklen_t internally as well.
* Removed _PATH_* constants from netdb.h that we don't deliver anymore.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33972 a95241bf-73f2-0310-859d-f6bbb57e9c96

4bd3cce6 09-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Ported libbind-6.0 to Haiku, and into our libnetwork.so.
* Got rid of the TLS/multi-thread hacks of the previous port.
* Took over irs/lcl_sv.cpp, and irs/lcl_ho.c, and irs/lcl_pr.c from the previous
version as they contain customizations.
* Removed unused files from libbind.
* Only barely tested, so beware.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33968 a95241bf-73f2-0310-859d-f6bbb57e9c96


Jamfile
dns/DEVNOTES
dns/headers/isc/misc.h
dns/headers/pthread_emu.h
dns/headers/sys/un.h
dns/headers/utmp.h
dns/src/TLSInit.cpp
dns/src/ethers.c
dns/src/gettimeofday.c
dns/src/linkaddr.c
libbind/COPYRIGHT
libbind/Jamfile
libbind/bsd/strsep.c
libbind/config.h
libbind/defaults/services
libbind/dst/dst_api.c
libbind/dst/dst_internal.h
libbind/dst/hmac_link.c
libbind/dst/md5.h
libbind/dst/md5_dgst.c
libbind/dst/md5_locl.h
libbind/dst/support.c
libbind/include/Makefile
libbind/include/Makefile.in
libbind/include/arpa_dude/inet.h
libbind/include/arpa_dude/nameser.h
libbind/include/arpa_dude/nameser_compat.h
libbind/include/arpa_dude/resolv.h
libbind/include/fd_setsize.h
libbind/include/hesiod.h
libbind/include/irp.h
libbind/include/irs.h
libbind/include/isc/assertions.h
libbind/include/isc/ctl.h
libbind/include/isc/dst.h
libbind/include/isc/eventlib.h
libbind/include/isc/heap.h
libbind/include/isc/irpmarshall.h
libbind/include/isc/list.h
libbind/include/isc/logging.h
libbind/include/isc/memcluster.h
libbind/include/isc/misc.h
libbind/include/isc/platform.h
libbind/include/isc/platform.h.in
libbind/include/isc/tree.h
libbind/include/netdb.h
libbind/include/netgroup.h
libbind/include/res_update.h
libbind/include/resolv_mt.h
libbind/include/sys/bitypes.h
libbind/include/utmp.h
libbind/inet/inet_addr.c
libbind/inet/inet_cidr_ntop.c
libbind/inet/inet_cidr_pton.c
libbind/inet/inet_data.c
libbind/inet/inet_lnaof.c
libbind/inet/inet_makeaddr.c
libbind/inet/inet_net_ntop.c
libbind/inet/inet_net_pton.c
libbind/inet/inet_neta.c
libbind/inet/inet_netof.c
libbind/inet/inet_network.c
libbind/inet/inet_ntoa.c
libbind/inet/inet_ntop.c
libbind/inet/inet_pton.c
libbind/inet/nsap_addr.c
libbind/irs/dns.c
libbind/irs/dns_gr.c
libbind/irs/dns_ho.c
libbind/irs/dns_nw.c
libbind/irs/dns_p.h
libbind/irs/dns_pr.c
libbind/irs/dns_pw.c
libbind/irs/dns_sv.c
libbind/irs/gai_strerror.c
libbind/irs/gen.c
libbind/irs/gen_gr.c
libbind/irs/gen_ho.c
libbind/irs/gen_ng.c
libbind/irs/gen_nw.c
libbind/irs/gen_p.h
libbind/irs/gen_pr.c
libbind/irs/gen_pw.c
libbind/irs/gen_sv.c
libbind/irs/getaddrinfo.c
libbind/irs/getgrent.c
libbind/irs/getgrent_r.c
libbind/irs/gethostent.c
libbind/irs/gethostent_r.c
libbind/irs/getnameinfo.c
libbind/irs/getnetent.c
libbind/irs/getnetent_r.c
libbind/irs/getnetgrent.c
libbind/irs/getnetgrent_r.c
libbind/irs/getprotoent.c
libbind/irs/getprotoent_r.c
libbind/irs/getpwent.c
libbind/irs/getpwent_r.c
libbind/irs/getservent.c
libbind/irs/getservent_r.c
libbind/irs/hesiod.c
libbind/irs/hesiod_p.h
libbind/irs/irp.c
libbind/irs/irp_gr.c
libbind/irs/irp_ho.c
libbind/irs/irp_ng.c
libbind/irs/irp_nw.c
libbind/irs/irp_p.h
libbind/irs/irp_pr.c
libbind/irs/irp_pw.c
libbind/irs/irp_sv.c
libbind/irs/irpmarshall.c
libbind/irs/irs_data.c
libbind/irs/irs_data.h
libbind/irs/irs_p.h
libbind/irs/lcl.c
libbind/irs/lcl_gr.c
libbind/irs/lcl_ho.c
libbind/irs/lcl_ng.c
libbind/irs/lcl_nw.c
libbind/irs/lcl_p.h
libbind/irs/lcl_pr.c
libbind/irs/lcl_pw.c
libbind/irs/lcl_sv.cpp
libbind/irs/nis.c
libbind/irs/nis_gr.c
libbind/irs/nis_ho.c
libbind/irs/nis_ng.c
libbind/irs/nis_nw.c
libbind/irs/nis_p.h
libbind/irs/nis_pr.c
libbind/irs/nis_pw.c
libbind/irs/nis_sv.c
libbind/irs/nul_ng.c
libbind/irs/pathnames.h
libbind/irs/util.c
libbind/isc/assertions.c
libbind/isc/assertions.mdoc
libbind/isc/base64.c
libbind/isc/bitncmp.c
libbind/isc/bitncmp.mdoc
libbind/isc/ctl_clnt.c
libbind/isc/ctl_p.c
libbind/isc/ctl_p.h
libbind/isc/ctl_srvr.c
libbind/isc/ev_connects.c
libbind/isc/ev_files.c
libbind/isc/ev_streams.c
libbind/isc/ev_timers.c
libbind/isc/ev_waits.c
libbind/isc/eventlib.c
libbind/isc/eventlib.mdoc
libbind/isc/eventlib_p.h
libbind/isc/heap.c
libbind/isc/heap.mdoc
libbind/isc/hex.c
libbind/isc/logging.c
libbind/isc/logging.mdoc
libbind/isc/logging_p.h
libbind/isc/memcluster.c
libbind/isc/memcluster.mdoc
libbind/isc/movefile.c
libbind/isc/tree.c
libbind/isc/tree.mdoc
libbind/nameser/ns_date.c
libbind/nameser/ns_name.c
libbind/nameser/ns_netint.c
libbind/nameser/ns_newmsg.c
libbind/nameser/ns_parse.c
libbind/nameser/ns_print.c
libbind/nameser/ns_rdata.c
libbind/nameser/ns_samedomain.c
libbind/nameser/ns_sign.c
libbind/nameser/ns_ttl.c
libbind/nameser/ns_verify.c
libbind/port_after.h
libbind/port_before.h
libbind/resolv/herror.c
libbind/resolv/mtctxres.c
libbind/resolv/res_comp.c
libbind/resolv/res_data.c
libbind/resolv/res_debug.c
libbind/resolv/res_debug.h
libbind/resolv/res_findzonecut.c
libbind/resolv/res_init.c
libbind/resolv/res_mkquery.c
libbind/resolv/res_mkupdate.c
libbind/resolv/res_mkupdate.h
libbind/resolv/res_private.h
libbind/resolv/res_query.c
libbind/resolv/res_send.c
libbind/resolv/res_sendsigned.c
libbind/resolv/res_update.c
571d840a 19-Oct-2009 Oliver Tappe <zooey@hirschkaefer.de>

* dropped svn:keywords property from all files that carried it
to avoid recurring problems during migration of subversion checkouts
(restored binary files that were garbled by subversions during checkout)
* added appropriate svn:mime-type property for problematic (binary) files
* removed a single (mistyped) svn:mimetype property
* dropped svn:eol-style property for cleanup (they all contained 'native')



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33670 a95241bf-73f2-0310-859d-f6bbb57e9c96


dns/headers/hesiod.h
dns/headers/irp.h
dns/headers/isc/assertions.h
dns/headers/isc/ctl.h
dns/headers/isc/eventlib.h
dns/headers/isc/irpmarshall.h
dns/headers/isc/misc.h
dns/headers/isc/tree.h
dns/headers/res_update.h
dns/inet/inet_addr.c
dns/inet/inet_cidr_ntop.c
dns/inet/inet_cidr_pton.c
dns/inet/inet_data.c
dns/inet/inet_net_ntop.c
dns/inet/inet_net_pton.c
dns/inet/inet_neta.c
dns/inet/inet_ntoa.c
dns/inet/inet_ntop.c
dns/inet/inet_pton.c
dns/inet/nsap_addr.c
dns/irs/dns.c
dns/irs/dns_ho.c
dns/irs/dns_nw.c
dns/irs/dns_p.h
dns/irs/dns_pr.c
dns/irs/dns_sv.c
dns/irs/gen.c
dns/irs/gen_ho.c
dns/irs/gen_ng.c
dns/irs/gen_nw.c
dns/irs/gen_p.h
dns/irs/gen_pr.c
dns/irs/gen_sv.c
dns/irs/gethostent.c
dns/irs/gethostent_r.c
dns/irs/getnetent.c
dns/irs/getnetent_r.c
dns/irs/getnetgrent.c
dns/irs/getnetgrent_r.c
dns/irs/getprotoent.c
dns/irs/getprotoent_r.c
dns/irs/getservent.c
dns/irs/getservent_r.c
dns/irs/hesiod.c
dns/irs/hesiod_p.h
dns/irs/irp.c
dns/irs/irp_ho.c
dns/irs/irp_ng.c
dns/irs/irp_nw.c
dns/irs/irp_p.h
dns/irs/irp_pr.c
dns/irs/irp_sv.c
dns/irs/irpmarshall.c
dns/irs/irs_data.c
dns/irs/irs_data.h
dns/irs/lcl.c
dns/irs/lcl_ho.c
dns/irs/lcl_ng.c
dns/irs/lcl_nw.c
dns/irs/nis.c
dns/irs/nis_p.h
dns/irs/nul_ng.c
dns/irs/pathnames.h
dns/irs/util.c
dns/isc/assertions.c
dns/isc/base64.c
dns/isc/bitncmp.c
dns/isc/ev_connects.c
dns/isc/ev_files.c
dns/isc/ev_streams.c
dns/isc/ev_timers.c
dns/isc/ev_waits.c
dns/isc/eventlib.c
dns/isc/eventlib_p.h
dns/isc/heap.c
dns/isc/logging.c
dns/isc/memcluster.c
dns/isc/tree.c
dns/nameser/ns_date.c
dns/nameser/ns_name.c
dns/nameser/ns_netint.c
dns/nameser/ns_parse.c
dns/nameser/ns_print.c
dns/nameser/ns_samedomain.c
dns/nameser/ns_sign.c
dns/nameser/ns_ttl.c
dns/nameser/ns_verify.c
dns/resolv/herror.c
dns/resolv/res_comp.c
dns/resolv/res_data.c
dns/resolv/res_debug.c
dns/resolv/res_findzonecut.c
dns/resolv/res_init.c
dns/resolv/res_mkquery.c
dns/resolv/res_mkupdate.c
dns/resolv/res_query.c
dns/resolv/res_send.c
dns/resolv/res_update.c
dns/src/strsep.c
b69dfc85 05-Oct-2009 Bruno G. Albuquerque <bga@bug-br.org.br>

BnetEndPoint::Send() should use BytesRemaining() as the amount of data to be sent, not
Size(). This fixes #4724.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33437 a95241bf-73f2-0310-859d-f6bbb57e9c96

c91bc0e1 29-Sep-2009 Michael Lotz <mmlr@mlotz.ch>

Style cleanups, spacing, pointer style.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33352 a95241bf-73f2-0310-859d-f6bbb57e9c96

49714746 29-Sep-2009 Michael Lotz <mmlr@mlotz.ch>

Space indent -> tab indent.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33351 a95241bf-73f2-0310-859d-f6bbb57e9c96

8ae594ff 28-Jul-2009 Axel Dörfler <axeld@pinc-software.de>

* Introduced dedicated syscalls for the deprecated BeOS fs_attr API. Before,
each attribute access needed 3 syscalls, now only one as it should.
* Renamed the new Haiku call fs_open_attr() to fs_fopen_attr(), and added a new
function fs_open_attr() that takes a path (same semantics as the
fs_[f]open_attr_dir() functions already present in BeOS).
* Merged former _kern_open_attr(), and _kern_create_attr() into one syscall.
* Cleaned up vfs.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31881 a95241bf-73f2-0310-859d-f6bbb57e9c96

5070e117 27-Jul-2009 Axel Dörfler <axeld@pinc-software.de>

* Removed bind 9.6.1 again. I'm pretty stupid actually: the DNS resolver has
been removed since 9.5.0, and is available as libbind now. This indeed still
looks very similar to what we already have in our repository, and is much
smaller, too. Sorry for the noise... I just could not find libbind on the
ISC site before.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31830 a95241bf-73f2-0310-859d-f6bbb57e9c96


bind/COPYRIGHT
bind/Jamfile
bind/ReadMe
bind/config.h
bind/lib/Makefile
bind/lib/Makefile.in
bind/lib/bind9/Makefile
bind/lib/bind9/Makefile.in
bind/lib/bind9/api
bind/lib/bind9/check.c
bind/lib/bind9/getaddresses.c
bind/lib/bind9/include/Makefile
bind/lib/bind9/include/Makefile.in
bind/lib/bind9/include/bind9/Makefile
bind/lib/bind9/include/bind9/Makefile.in
bind/lib/bind9/include/bind9/check.h
bind/lib/bind9/include/bind9/getaddresses.h
bind/lib/bind9/include/bind9/version.h
bind/lib/bind9/version.c
bind/lib/bind9/win32/DLLMain.c
bind/lib/bind9/win32/libbind9.def
bind/lib/bind9/win32/libbind9.dsp
bind/lib/bind9/win32/libbind9.dsw
bind/lib/bind9/win32/libbind9.mak
bind/lib/bind9/win32/version.c
bind/lib/dns/Makefile
bind/lib/dns/Makefile.in
bind/lib/dns/acache.c
bind/lib/dns/acl.c
bind/lib/dns/adb.c
bind/lib/dns/api
bind/lib/dns/byaddr.c
bind/lib/dns/cache.c
bind/lib/dns/callbacks.c
bind/lib/dns/compress.c
bind/lib/dns/db.c
bind/lib/dns/dbiterator.c
bind/lib/dns/dbtable.c
bind/lib/dns/diff.c
bind/lib/dns/dispatch.c
bind/lib/dns/dlz.c
bind/lib/dns/dnssec.c
bind/lib/dns/ds.c
bind/lib/dns/dst_api.c
bind/lib/dns/dst_internal.h
bind/lib/dns/dst_lib.c
bind/lib/dns/dst_openssl.h
bind/lib/dns/dst_parse.c
bind/lib/dns/dst_parse.h
bind/lib/dns/dst_result.c
bind/lib/dns/forward.c
bind/lib/dns/gen-unix.h
bind/lib/dns/gen-win32.h
bind/lib/dns/gen.c
bind/lib/dns/gssapi_link.c
bind/lib/dns/gssapictx.c
bind/lib/dns/hmac_link.c
bind/lib/dns/include/Makefile
bind/lib/dns/include/Makefile.in
bind/lib/dns/include/dns/Makefile
bind/lib/dns/include/dns/Makefile.in
bind/lib/dns/include/dns/acache.h
bind/lib/dns/include/dns/acl.h
bind/lib/dns/include/dns/adb.h
bind/lib/dns/include/dns/bit.h
bind/lib/dns/include/dns/byaddr.h
bind/lib/dns/include/dns/cache.h
bind/lib/dns/include/dns/callbacks.h
bind/lib/dns/include/dns/cert.h
bind/lib/dns/include/dns/compress.h
bind/lib/dns/include/dns/db.h
bind/lib/dns/include/dns/dbiterator.h
bind/lib/dns/include/dns/dbtable.h
bind/lib/dns/include/dns/diff.h
bind/lib/dns/include/dns/dispatch.h
bind/lib/dns/include/dns/dlz.h
bind/lib/dns/include/dns/dnssec.h
bind/lib/dns/include/dns/ds.h
bind/lib/dns/include/dns/events.h
bind/lib/dns/include/dns/fixedname.h
bind/lib/dns/include/dns/forward.h
bind/lib/dns/include/dns/iptable.h
bind/lib/dns/include/dns/journal.h
bind/lib/dns/include/dns/keyflags.h
bind/lib/dns/include/dns/keytable.h
bind/lib/dns/include/dns/keyvalues.h
bind/lib/dns/include/dns/lib.h
bind/lib/dns/include/dns/log.h
bind/lib/dns/include/dns/lookup.h
bind/lib/dns/include/dns/master.h
bind/lib/dns/include/dns/masterdump.h
bind/lib/dns/include/dns/message.h
bind/lib/dns/include/dns/name.h
bind/lib/dns/include/dns/ncache.h
bind/lib/dns/include/dns/nsec.h
bind/lib/dns/include/dns/nsec3.h
bind/lib/dns/include/dns/opcode.h
bind/lib/dns/include/dns/order.h
bind/lib/dns/include/dns/peer.h
bind/lib/dns/include/dns/portlist.h
bind/lib/dns/include/dns/rbt.h
bind/lib/dns/include/dns/rcode.h
bind/lib/dns/include/dns/rdata.h
bind/lib/dns/include/dns/rdataclass.h
bind/lib/dns/include/dns/rdatalist.h
bind/lib/dns/include/dns/rdataset.h
bind/lib/dns/include/dns/rdatasetiter.h
bind/lib/dns/include/dns/rdataslab.h
bind/lib/dns/include/dns/rdatatype.h
bind/lib/dns/include/dns/request.h
bind/lib/dns/include/dns/resolver.h
bind/lib/dns/include/dns/result.h
bind/lib/dns/include/dns/rootns.h
bind/lib/dns/include/dns/sdb.h
bind/lib/dns/include/dns/sdlz.h
bind/lib/dns/include/dns/secalg.h
bind/lib/dns/include/dns/secproto.h
bind/lib/dns/include/dns/soa.h
bind/lib/dns/include/dns/ssu.h
bind/lib/dns/include/dns/stats.h
bind/lib/dns/include/dns/tcpmsg.h
bind/lib/dns/include/dns/time.h
bind/lib/dns/include/dns/timer.h
bind/lib/dns/include/dns/tkey.h
bind/lib/dns/include/dns/tsig.h
bind/lib/dns/include/dns/ttl.h
bind/lib/dns/include/dns/types.h
bind/lib/dns/include/dns/validator.h
bind/lib/dns/include/dns/version.h
bind/lib/dns/include/dns/view.h
bind/lib/dns/include/dns/xfrin.h
bind/lib/dns/include/dns/zone.h
bind/lib/dns/include/dns/zonekey.h
bind/lib/dns/include/dns/zt.h
bind/lib/dns/include/dst/Makefile
bind/lib/dns/include/dst/Makefile.in
bind/lib/dns/include/dst/dst.h
bind/lib/dns/include/dst/gssapi.h
bind/lib/dns/include/dst/lib.h
bind/lib/dns/include/dst/result.h
bind/lib/dns/iptable.c
bind/lib/dns/journal.c
bind/lib/dns/key.c
bind/lib/dns/keytable.c
bind/lib/dns/lib.c
bind/lib/dns/log.c
bind/lib/dns/lookup.c
bind/lib/dns/master.c
bind/lib/dns/masterdump.c
bind/lib/dns/message.c
bind/lib/dns/name.c
bind/lib/dns/ncache.c
bind/lib/dns/nsec.c
bind/lib/dns/nsec3.c
bind/lib/dns/openssl_link.c
bind/lib/dns/openssldh_link.c
bind/lib/dns/openssldsa_link.c
bind/lib/dns/opensslrsa_link.c
bind/lib/dns/order.c
bind/lib/dns/peer.c
bind/lib/dns/portlist.c
bind/lib/dns/rbt.c
bind/lib/dns/rbtdb.c
bind/lib/dns/rbtdb.h
bind/lib/dns/rbtdb64.c
bind/lib/dns/rbtdb64.h
bind/lib/dns/rcode.c
bind/lib/dns/rdata.c
bind/lib/dns/rdata/any_255/tsig_250.c
bind/lib/dns/rdata/any_255/tsig_250.h
bind/lib/dns/rdata/ch_3/a_1.c
bind/lib/dns/rdata/ch_3/a_1.h
bind/lib/dns/rdata/generic/afsdb_18.c
bind/lib/dns/rdata/generic/afsdb_18.h
bind/lib/dns/rdata/generic/cert_37.c
bind/lib/dns/rdata/generic/cert_37.h
bind/lib/dns/rdata/generic/cname_5.c
bind/lib/dns/rdata/generic/cname_5.h
bind/lib/dns/rdata/generic/dlv_32769.c
bind/lib/dns/rdata/generic/dlv_32769.h
bind/lib/dns/rdata/generic/dname_39.c
bind/lib/dns/rdata/generic/dname_39.h
bind/lib/dns/rdata/generic/dnskey_48.c
bind/lib/dns/rdata/generic/dnskey_48.h
bind/lib/dns/rdata/generic/ds_43.c
bind/lib/dns/rdata/generic/ds_43.h
bind/lib/dns/rdata/generic/gpos_27.c
bind/lib/dns/rdata/generic/gpos_27.h
bind/lib/dns/rdata/generic/hinfo_13.c
bind/lib/dns/rdata/generic/hinfo_13.h
bind/lib/dns/rdata/generic/ipseckey_45.c
bind/lib/dns/rdata/generic/ipseckey_45.h
bind/lib/dns/rdata/generic/isdn_20.c
bind/lib/dns/rdata/generic/isdn_20.h
bind/lib/dns/rdata/generic/key_25.c
bind/lib/dns/rdata/generic/key_25.h
bind/lib/dns/rdata/generic/loc_29.c
bind/lib/dns/rdata/generic/loc_29.h
bind/lib/dns/rdata/generic/mb_7.c
bind/lib/dns/rdata/generic/mb_7.h
bind/lib/dns/rdata/generic/md_3.c
bind/lib/dns/rdata/generic/md_3.h
bind/lib/dns/rdata/generic/mf_4.c
bind/lib/dns/rdata/generic/mf_4.h
bind/lib/dns/rdata/generic/mg_8.c
bind/lib/dns/rdata/generic/mg_8.h
bind/lib/dns/rdata/generic/minfo_14.c
bind/lib/dns/rdata/generic/minfo_14.h
bind/lib/dns/rdata/generic/mr_9.c
bind/lib/dns/rdata/generic/mr_9.h
bind/lib/dns/rdata/generic/mx_15.c
bind/lib/dns/rdata/generic/mx_15.h
bind/lib/dns/rdata/generic/ns_2.c
bind/lib/dns/rdata/generic/ns_2.h
bind/lib/dns/rdata/generic/nsec3_50.c
bind/lib/dns/rdata/generic/nsec3_50.h
bind/lib/dns/rdata/generic/nsec3param_51.c
bind/lib/dns/rdata/generic/nsec3param_51.h
bind/lib/dns/rdata/generic/nsec_47.c
bind/lib/dns/rdata/generic/nsec_47.h
bind/lib/dns/rdata/generic/null_10.c
bind/lib/dns/rdata/generic/null_10.h
bind/lib/dns/rdata/generic/nxt_30.c
bind/lib/dns/rdata/generic/nxt_30.h
bind/lib/dns/rdata/generic/opt_41.c
bind/lib/dns/rdata/generic/opt_41.h
bind/lib/dns/rdata/generic/proforma.c
bind/lib/dns/rdata/generic/proforma.h
bind/lib/dns/rdata/generic/ptr_12.c
bind/lib/dns/rdata/generic/ptr_12.h
bind/lib/dns/rdata/generic/rp_17.c
bind/lib/dns/rdata/generic/rp_17.h
bind/lib/dns/rdata/generic/rrsig_46.c
bind/lib/dns/rdata/generic/rrsig_46.h
bind/lib/dns/rdata/generic/rt_21.c
bind/lib/dns/rdata/generic/rt_21.h
bind/lib/dns/rdata/generic/sig_24.c
bind/lib/dns/rdata/generic/sig_24.h
bind/lib/dns/rdata/generic/soa_6.c
bind/lib/dns/rdata/generic/soa_6.h
bind/lib/dns/rdata/generic/spf_99.c
bind/lib/dns/rdata/generic/spf_99.h
bind/lib/dns/rdata/generic/sshfp_44.c
bind/lib/dns/rdata/generic/sshfp_44.h
bind/lib/dns/rdata/generic/tkey_249.c
bind/lib/dns/rdata/generic/tkey_249.h
bind/lib/dns/rdata/generic/txt_16.c
bind/lib/dns/rdata/generic/txt_16.h
bind/lib/dns/rdata/generic/unspec_103.c
bind/lib/dns/rdata/generic/unspec_103.h
bind/lib/dns/rdata/generic/x25_19.c
bind/lib/dns/rdata/generic/x25_19.h
bind/lib/dns/rdata/hs_4/a_1.c
bind/lib/dns/rdata/hs_4/a_1.h
bind/lib/dns/rdata/in_1/a6_38.c
bind/lib/dns/rdata/in_1/a6_38.h
bind/lib/dns/rdata/in_1/a_1.c
bind/lib/dns/rdata/in_1/a_1.h
bind/lib/dns/rdata/in_1/aaaa_28.c
bind/lib/dns/rdata/in_1/aaaa_28.h
bind/lib/dns/rdata/in_1/apl_42.c
bind/lib/dns/rdata/in_1/apl_42.h
bind/lib/dns/rdata/in_1/dhcid_49.c
bind/lib/dns/rdata/in_1/dhcid_49.h
bind/lib/dns/rdata/in_1/kx_36.c
bind/lib/dns/rdata/in_1/kx_36.h
bind/lib/dns/rdata/in_1/naptr_35.c
bind/lib/dns/rdata/in_1/naptr_35.h
bind/lib/dns/rdata/in_1/nsap-ptr_23.c
bind/lib/dns/rdata/in_1/nsap-ptr_23.h
bind/lib/dns/rdata/in_1/nsap_22.c
bind/lib/dns/rdata/in_1/nsap_22.h
bind/lib/dns/rdata/in_1/px_26.c
bind/lib/dns/rdata/in_1/px_26.h
bind/lib/dns/rdata/in_1/srv_33.c
bind/lib/dns/rdata/in_1/srv_33.h
bind/lib/dns/rdata/in_1/wks_11.c
bind/lib/dns/rdata/in_1/wks_11.h
bind/lib/dns/rdata/rdatastructpre.h
bind/lib/dns/rdata/rdatastructsuf.h
bind/lib/dns/rdatalist.c
bind/lib/dns/rdatalist_p.h
bind/lib/dns/rdataset.c
bind/lib/dns/rdatasetiter.c
bind/lib/dns/rdataslab.c
bind/lib/dns/request.c
bind/lib/dns/resolver.c
bind/lib/dns/result.c
bind/lib/dns/rootns.c
bind/lib/dns/sdb.c
bind/lib/dns/sdlz.c
bind/lib/dns/soa.c
bind/lib/dns/spnego.asn1
bind/lib/dns/spnego.c
bind/lib/dns/spnego.h
bind/lib/dns/spnego_asn1.c
bind/lib/dns/spnego_asn1.pl
bind/lib/dns/ssu.c
bind/lib/dns/stats.c
bind/lib/dns/tcpmsg.c
bind/lib/dns/time.c
bind/lib/dns/timer.c
bind/lib/dns/tkey.c
bind/lib/dns/tsig.c
bind/lib/dns/ttl.c
bind/lib/dns/validator.c
bind/lib/dns/version.c
bind/lib/dns/view.c
bind/lib/dns/xfrin.c
bind/lib/dns/zone.c
bind/lib/dns/zonekey.c
bind/lib/dns/zt.c
bind/lib/isc/Makefile
bind/lib/isc/Makefile.in
bind/lib/isc/alpha/Makefile.in
bind/lib/isc/alpha/include/Makefile.in
bind/lib/isc/alpha/include/isc/Makefile.in
bind/lib/isc/alpha/include/isc/atomic.h
bind/lib/isc/api
bind/lib/isc/assertions.c
bind/lib/isc/base32.c
bind/lib/isc/base64.c
bind/lib/isc/bitstring.c
bind/lib/isc/buffer.c
bind/lib/isc/bufferlist.c
bind/lib/isc/commandline.c
bind/lib/isc/entropy.c
bind/lib/isc/error.c
bind/lib/isc/event.c
bind/lib/isc/fsaccess.c
bind/lib/isc/hash.c
bind/lib/isc/heap.c
bind/lib/isc/hex.c
bind/lib/isc/hmacmd5.c
bind/lib/isc/hmacsha.c
bind/lib/isc/httpd.c
bind/lib/isc/ia64/Makefile.in
bind/lib/isc/ia64/include/Makefile.in
bind/lib/isc/ia64/include/isc/Makefile.in
bind/lib/isc/ia64/include/isc/atomic.h
bind/lib/isc/include/Makefile
bind/lib/isc/include/Makefile.in
bind/lib/isc/include/isc/Makefile
bind/lib/isc/include/isc/Makefile.in
bind/lib/isc/include/isc/app.h
bind/lib/isc/include/isc/assertions.h
bind/lib/isc/include/isc/base32.h
bind/lib/isc/include/isc/base64.h
bind/lib/isc/include/isc/bitstring.h
bind/lib/isc/include/isc/boolean.h
bind/lib/isc/include/isc/buffer.h
bind/lib/isc/include/isc/bufferlist.h
bind/lib/isc/include/isc/commandline.h
bind/lib/isc/include/isc/entropy.h
bind/lib/isc/include/isc/error.h
bind/lib/isc/include/isc/event.h
bind/lib/isc/include/isc/eventclass.h
bind/lib/isc/include/isc/file.h
bind/lib/isc/include/isc/formatcheck.h
bind/lib/isc/include/isc/fsaccess.h
bind/lib/isc/include/isc/hash.h
bind/lib/isc/include/isc/heap.h
bind/lib/isc/include/isc/hex.h
bind/lib/isc/include/isc/hmacmd5.h
bind/lib/isc/include/isc/hmacsha.h
bind/lib/isc/include/isc/httpd.h
bind/lib/isc/include/isc/interfaceiter.h
bind/lib/isc/include/isc/ipv6.h
bind/lib/isc/include/isc/iterated_hash.h
bind/lib/isc/include/isc/lang.h
bind/lib/isc/include/isc/lex.h
bind/lib/isc/include/isc/lfsr.h
bind/lib/isc/include/isc/lib.h
bind/lib/isc/include/isc/list.h
bind/lib/isc/include/isc/log.h
bind/lib/isc/include/isc/magic.h
bind/lib/isc/include/isc/md5.h
bind/lib/isc/include/isc/mem.h
bind/lib/isc/include/isc/msgcat.h
bind/lib/isc/include/isc/msgs.h
bind/lib/isc/include/isc/mutexblock.h
bind/lib/isc/include/isc/netaddr.h
bind/lib/isc/include/isc/netscope.h
bind/lib/isc/include/isc/ondestroy.h
bind/lib/isc/include/isc/os.h
bind/lib/isc/include/isc/parseint.h
bind/lib/isc/include/isc/platform.h
bind/lib/isc/include/isc/platform.h.in
bind/lib/isc/include/isc/portset.h
bind/lib/isc/include/isc/print.h
bind/lib/isc/include/isc/quota.h
bind/lib/isc/include/isc/radix.h
bind/lib/isc/include/isc/random.h
bind/lib/isc/include/isc/ratelimiter.h
bind/lib/isc/include/isc/refcount.h
bind/lib/isc/include/isc/region.h
bind/lib/isc/include/isc/resource.h
bind/lib/isc/include/isc/result.h
bind/lib/isc/include/isc/resultclass.h
bind/lib/isc/include/isc/rwlock.h
bind/lib/isc/include/isc/serial.h
bind/lib/isc/include/isc/sha1.h
bind/lib/isc/include/isc/sha2.h
bind/lib/isc/include/isc/sockaddr.h
bind/lib/isc/include/isc/socket.h
bind/lib/isc/include/isc/stats.h
bind/lib/isc/include/isc/stdio.h
bind/lib/isc/include/isc/stdlib.h
bind/lib/isc/include/isc/string.h
bind/lib/isc/include/isc/symtab.h
bind/lib/isc/include/isc/task.h
bind/lib/isc/include/isc/taskpool.h
bind/lib/isc/include/isc/timer.h
bind/lib/isc/include/isc/types.h
bind/lib/isc/include/isc/util.h
bind/lib/isc/include/isc/version.h
bind/lib/isc/include/isc/xml.h
bind/lib/isc/inet_aton.c
bind/lib/isc/inet_ntop.c
bind/lib/isc/inet_pton.c
bind/lib/isc/iterated_hash.c
bind/lib/isc/lex.c
bind/lib/isc/lfsr.c
bind/lib/isc/lib.c
bind/lib/isc/log.c
bind/lib/isc/md5.c
bind/lib/isc/mem.c
bind/lib/isc/mips/Makefile.in
bind/lib/isc/mips/include/Makefile.in
bind/lib/isc/mips/include/isc/Makefile.in
bind/lib/isc/mips/include/isc/atomic.h
bind/lib/isc/mutexblock.c
bind/lib/isc/netaddr.c
bind/lib/isc/netscope.c
bind/lib/isc/nls/Makefile
bind/lib/isc/nls/Makefile.in
bind/lib/isc/nls/msgcat.c
bind/lib/isc/noatomic/Makefile.in
bind/lib/isc/noatomic/include/Makefile.in
bind/lib/isc/noatomic/include/isc/Makefile.in
bind/lib/isc/noatomic/include/isc/atomic.h
bind/lib/isc/nothreads/Makefile
bind/lib/isc/nothreads/Makefile.in
bind/lib/isc/nothreads/condition.c
bind/lib/isc/nothreads/include/Makefile
bind/lib/isc/nothreads/include/Makefile.in
bind/lib/isc/nothreads/include/isc/Makefile
bind/lib/isc/nothreads/include/isc/Makefile.in
bind/lib/isc/nothreads/include/isc/condition.h
bind/lib/isc/nothreads/include/isc/mutex.h
bind/lib/isc/nothreads/include/isc/once.h
bind/lib/isc/nothreads/include/isc/thread.h
bind/lib/isc/nothreads/mutex.c
bind/lib/isc/nothreads/thread.c
bind/lib/isc/ondestroy.c
bind/lib/isc/parseint.c
bind/lib/isc/portset.c
bind/lib/isc/powerpc/Makefile.in
bind/lib/isc/powerpc/include/Makefile.in
bind/lib/isc/powerpc/include/isc/Makefile.in
bind/lib/isc/powerpc/include/isc/atomic.h
bind/lib/isc/print.c
bind/lib/isc/pthreads/Makefile.in
bind/lib/isc/pthreads/condition.c
bind/lib/isc/pthreads/include/Makefile.in
bind/lib/isc/pthreads/include/isc/Makefile.in
bind/lib/isc/pthreads/include/isc/condition.h
bind/lib/isc/pthreads/include/isc/mutex.h
bind/lib/isc/pthreads/include/isc/once.h
bind/lib/isc/pthreads/include/isc/thread.h
bind/lib/isc/pthreads/mutex.c
bind/lib/isc/pthreads/thread.c
bind/lib/isc/quota.c
bind/lib/isc/radix.c
bind/lib/isc/random.c
bind/lib/isc/ratelimiter.c
bind/lib/isc/refcount.c
bind/lib/isc/region.c
bind/lib/isc/result.c
bind/lib/isc/rwlock.c
bind/lib/isc/serial.c
bind/lib/isc/sha1.c
bind/lib/isc/sha2.c
bind/lib/isc/sockaddr.c
bind/lib/isc/sparc64/Makefile.in
bind/lib/isc/sparc64/include/Makefile.in
bind/lib/isc/sparc64/include/isc/Makefile.in
bind/lib/isc/sparc64/include/isc/atomic.h
bind/lib/isc/stats.c
bind/lib/isc/string.c
bind/lib/isc/strtoul.c
bind/lib/isc/symtab.c
bind/lib/isc/task.c
bind/lib/isc/task_p.h
bind/lib/isc/taskpool.c
bind/lib/isc/timer.c
bind/lib/isc/timer_p.h
bind/lib/isc/unix/Makefile
bind/lib/isc/unix/Makefile.in
bind/lib/isc/unix/app.c
bind/lib/isc/unix/dir.c
bind/lib/isc/unix/entropy.c
bind/lib/isc/unix/errno2result.c
bind/lib/isc/unix/errno2result.h
bind/lib/isc/unix/file.c
bind/lib/isc/unix/fsaccess.c
bind/lib/isc/unix/ifiter_getifaddrs.c
bind/lib/isc/unix/ifiter_ioctl.c
bind/lib/isc/unix/ifiter_sysctl.c
bind/lib/isc/unix/include/Makefile
bind/lib/isc/unix/include/Makefile.in
bind/lib/isc/unix/include/isc/Makefile
bind/lib/isc/unix/include/isc/Makefile.in
bind/lib/isc/unix/include/isc/dir.h
bind/lib/isc/unix/include/isc/int.h
bind/lib/isc/unix/include/isc/keyboard.h
bind/lib/isc/unix/include/isc/net.h
bind/lib/isc/unix/include/isc/netdb.h
bind/lib/isc/unix/include/isc/offset.h
bind/lib/isc/unix/include/isc/stat.h
bind/lib/isc/unix/include/isc/stdtime.h
bind/lib/isc/unix/include/isc/strerror.h
bind/lib/isc/unix/include/isc/syslog.h
bind/lib/isc/unix/include/isc/time.h
bind/lib/isc/unix/interfaceiter.c
bind/lib/isc/unix/ipv6.c
bind/lib/isc/unix/keyboard.c
bind/lib/isc/unix/net.c
bind/lib/isc/unix/os.c
bind/lib/isc/unix/resource.c
bind/lib/isc/unix/socket.c
bind/lib/isc/unix/socket_p.h
bind/lib/isc/unix/stdio.c
bind/lib/isc/unix/stdtime.c
bind/lib/isc/unix/strerror.c
bind/lib/isc/unix/syslog.c
bind/lib/isc/unix/time.c
bind/lib/isc/version.c
bind/lib/isc/x86_32/Makefile
bind/lib/isc/x86_32/Makefile.in
bind/lib/isc/x86_32/include/Makefile
bind/lib/isc/x86_32/include/Makefile.in
bind/lib/isc/x86_32/include/isc/Makefile
bind/lib/isc/x86_32/include/isc/Makefile.in
bind/lib/isc/x86_32/include/isc/atomic.h
bind/lib/isc/x86_64/Makefile.in
bind/lib/isc/x86_64/include/Makefile.in
bind/lib/isc/x86_64/include/isc/Makefile.in
bind/lib/isc/x86_64/include/isc/atomic.h
bind/lib/isccc/Makefile
bind/lib/isccc/Makefile.in
bind/lib/isccc/alist.c
bind/lib/isccc/api
bind/lib/isccc/base64.c
bind/lib/isccc/cc.c
bind/lib/isccc/ccmsg.c
bind/lib/isccc/include/Makefile
bind/lib/isccc/include/Makefile.in
bind/lib/isccc/include/isccc/Makefile
bind/lib/isccc/include/isccc/Makefile.in
bind/lib/isccc/include/isccc/alist.h
bind/lib/isccc/include/isccc/base64.h
bind/lib/isccc/include/isccc/cc.h
bind/lib/isccc/include/isccc/ccmsg.h
bind/lib/isccc/include/isccc/events.h
bind/lib/isccc/include/isccc/lib.h
bind/lib/isccc/include/isccc/result.h
bind/lib/isccc/include/isccc/sexpr.h
bind/lib/isccc/include/isccc/symtab.h
bind/lib/isccc/include/isccc/symtype.h
bind/lib/isccc/include/isccc/types.h
bind/lib/isccc/include/isccc/util.h
bind/lib/isccc/include/isccc/version.h
bind/lib/isccc/lib.c
bind/lib/isccc/result.c
bind/lib/isccc/sexpr.c
bind/lib/isccc/symtab.c
bind/lib/isccc/version.c
bind/lib/isccfg/Makefile
bind/lib/isccfg/Makefile.in
bind/lib/isccfg/aclconf.c
bind/lib/isccfg/api
bind/lib/isccfg/include/Makefile
bind/lib/isccfg/include/Makefile.in
bind/lib/isccfg/include/isccfg/Makefile
bind/lib/isccfg/include/isccfg/Makefile.in
bind/lib/isccfg/include/isccfg/aclconf.h
bind/lib/isccfg/include/isccfg/cfg.h
bind/lib/isccfg/include/isccfg/grammar.h
bind/lib/isccfg/include/isccfg/log.h
bind/lib/isccfg/include/isccfg/namedconf.h
bind/lib/isccfg/include/isccfg/version.h
bind/lib/isccfg/log.c
bind/lib/isccfg/namedconf.c
bind/lib/isccfg/parser.c
bind/lib/isccfg/version.c
bind/lib/lwres/Makefile
bind/lib/lwres/Makefile.in
bind/lib/lwres/api
bind/lib/lwres/assert_p.h
bind/lib/lwres/context.c
bind/lib/lwres/context_p.h
bind/lib/lwres/gai_strerror.c
bind/lib/lwres/getaddrinfo.c
bind/lib/lwres/gethost.c
bind/lib/lwres/getipnode.c
bind/lib/lwres/getnameinfo.c
bind/lib/lwres/getrrset.c
bind/lib/lwres/herror.c
bind/lib/lwres/include/Makefile
bind/lib/lwres/include/Makefile.in
bind/lib/lwres/include/lwres/Makefile
bind/lib/lwres/include/lwres/Makefile.in
bind/lib/lwres/include/lwres/context.h
bind/lib/lwres/include/lwres/int.h
bind/lib/lwres/include/lwres/ipv6.h
bind/lib/lwres/include/lwres/lang.h
bind/lib/lwres/include/lwres/list.h
bind/lib/lwres/include/lwres/lwbuffer.h
bind/lib/lwres/include/lwres/lwpacket.h
bind/lib/lwres/include/lwres/lwres.h
bind/lib/lwres/include/lwres/netdb.h
bind/lib/lwres/include/lwres/netdb.h.in
bind/lib/lwres/include/lwres/platform.h
bind/lib/lwres/include/lwres/platform.h.in
bind/lib/lwres/include/lwres/result.h
bind/lib/lwres/include/lwres/stdlib.h
bind/lib/lwres/include/lwres/version.h
bind/lib/lwres/lwbuffer.c
bind/lib/lwres/lwconfig.c
bind/lib/lwres/lwinetaton.c
bind/lib/lwres/lwinetntop.c
bind/lib/lwres/lwinetpton.c
bind/lib/lwres/lwpacket.c
bind/lib/lwres/lwres_gabn.c
bind/lib/lwres/lwres_gnba.c
bind/lib/lwres/lwres_grbn.c
bind/lib/lwres/lwres_noop.c
bind/lib/lwres/lwresutil.c
bind/lib/lwres/print.c
bind/lib/lwres/print_p.h
bind/lib/lwres/strtoul.c
bind/lib/lwres/unix/Makefile
bind/lib/lwres/unix/Makefile.in
bind/lib/lwres/unix/include/Makefile
bind/lib/lwres/unix/include/Makefile.in
bind/lib/lwres/unix/include/lwres/Makefile
bind/lib/lwres/unix/include/lwres/Makefile.in
bind/lib/lwres/unix/include/lwres/net.h
bind/lib/lwres/version.c
4cc04409 26-Jul-2009 Axel Dörfler <axeld@pinc-software.de>

* Work-in-progress on bind update.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31781 a95241bf-73f2-0310-859d-f6bbb57e9c96


bind/COPYRIGHT
bind/Jamfile
bind/ReadMe
bind/config.h
bind/lib/Makefile
bind/lib/Makefile.in
bind/lib/bind9/Makefile
bind/lib/bind9/Makefile.in
bind/lib/bind9/api
bind/lib/bind9/check.c
bind/lib/bind9/getaddresses.c
bind/lib/bind9/include/Makefile
bind/lib/bind9/include/Makefile.in
bind/lib/bind9/include/bind9/Makefile
bind/lib/bind9/include/bind9/Makefile.in
bind/lib/bind9/include/bind9/check.h
bind/lib/bind9/include/bind9/getaddresses.h
bind/lib/bind9/include/bind9/version.h
bind/lib/bind9/version.c
bind/lib/bind9/win32/DLLMain.c
bind/lib/bind9/win32/libbind9.def
bind/lib/bind9/win32/libbind9.dsp
bind/lib/bind9/win32/libbind9.dsw
bind/lib/bind9/win32/libbind9.mak
bind/lib/bind9/win32/version.c
bind/lib/dns/Makefile
bind/lib/dns/Makefile.in
bind/lib/dns/acache.c
bind/lib/dns/acl.c
bind/lib/dns/adb.c
bind/lib/dns/api
bind/lib/dns/byaddr.c
bind/lib/dns/cache.c
bind/lib/dns/callbacks.c
bind/lib/dns/compress.c
bind/lib/dns/db.c
bind/lib/dns/dbiterator.c
bind/lib/dns/dbtable.c
bind/lib/dns/diff.c
bind/lib/dns/dispatch.c
bind/lib/dns/dlz.c
bind/lib/dns/dnssec.c
bind/lib/dns/ds.c
bind/lib/dns/dst_api.c
bind/lib/dns/dst_internal.h
bind/lib/dns/dst_lib.c
bind/lib/dns/dst_openssl.h
bind/lib/dns/dst_parse.c
bind/lib/dns/dst_parse.h
bind/lib/dns/dst_result.c
bind/lib/dns/forward.c
bind/lib/dns/gen-unix.h
bind/lib/dns/gen-win32.h
bind/lib/dns/gen.c
bind/lib/dns/gssapi_link.c
bind/lib/dns/gssapictx.c
bind/lib/dns/hmac_link.c
bind/lib/dns/include/Makefile
bind/lib/dns/include/Makefile.in
bind/lib/dns/include/dns/Makefile
bind/lib/dns/include/dns/Makefile.in
bind/lib/dns/include/dns/acache.h
bind/lib/dns/include/dns/acl.h
bind/lib/dns/include/dns/adb.h
bind/lib/dns/include/dns/bit.h
bind/lib/dns/include/dns/byaddr.h
bind/lib/dns/include/dns/cache.h
bind/lib/dns/include/dns/callbacks.h
bind/lib/dns/include/dns/cert.h
bind/lib/dns/include/dns/compress.h
bind/lib/dns/include/dns/db.h
bind/lib/dns/include/dns/dbiterator.h
bind/lib/dns/include/dns/dbtable.h
bind/lib/dns/include/dns/diff.h
bind/lib/dns/include/dns/dispatch.h
bind/lib/dns/include/dns/dlz.h
bind/lib/dns/include/dns/dnssec.h
bind/lib/dns/include/dns/ds.h
bind/lib/dns/include/dns/events.h
bind/lib/dns/include/dns/fixedname.h
bind/lib/dns/include/dns/forward.h
bind/lib/dns/include/dns/iptable.h
bind/lib/dns/include/dns/journal.h
bind/lib/dns/include/dns/keyflags.h
bind/lib/dns/include/dns/keytable.h
bind/lib/dns/include/dns/keyvalues.h
bind/lib/dns/include/dns/lib.h
bind/lib/dns/include/dns/log.h
bind/lib/dns/include/dns/lookup.h
bind/lib/dns/include/dns/master.h
bind/lib/dns/include/dns/masterdump.h
bind/lib/dns/include/dns/message.h
bind/lib/dns/include/dns/name.h
bind/lib/dns/include/dns/ncache.h
bind/lib/dns/include/dns/nsec.h
bind/lib/dns/include/dns/nsec3.h
bind/lib/dns/include/dns/opcode.h
bind/lib/dns/include/dns/order.h
bind/lib/dns/include/dns/peer.h
bind/lib/dns/include/dns/portlist.h
bind/lib/dns/include/dns/rbt.h
bind/lib/dns/include/dns/rcode.h
bind/lib/dns/include/dns/rdata.h
bind/lib/dns/include/dns/rdataclass.h
bind/lib/dns/include/dns/rdatalist.h
bind/lib/dns/include/dns/rdataset.h
bind/lib/dns/include/dns/rdatasetiter.h
bind/lib/dns/include/dns/rdataslab.h
bind/lib/dns/include/dns/rdatatype.h
bind/lib/dns/include/dns/request.h
bind/lib/dns/include/dns/resolver.h
bind/lib/dns/include/dns/result.h
bind/lib/dns/include/dns/rootns.h
bind/lib/dns/include/dns/sdb.h
bind/lib/dns/include/dns/sdlz.h
bind/lib/dns/include/dns/secalg.h
bind/lib/dns/include/dns/secproto.h
bind/lib/dns/include/dns/soa.h
bind/lib/dns/include/dns/ssu.h
bind/lib/dns/include/dns/stats.h
bind/lib/dns/include/dns/tcpmsg.h
bind/lib/dns/include/dns/time.h
bind/lib/dns/include/dns/timer.h
bind/lib/dns/include/dns/tkey.h
bind/lib/dns/include/dns/tsig.h
bind/lib/dns/include/dns/ttl.h
bind/lib/dns/include/dns/types.h
bind/lib/dns/include/dns/validator.h
bind/lib/dns/include/dns/version.h
bind/lib/dns/include/dns/view.h
bind/lib/dns/include/dns/xfrin.h
bind/lib/dns/include/dns/zone.h
bind/lib/dns/include/dns/zonekey.h
bind/lib/dns/include/dns/zt.h
bind/lib/dns/include/dst/Makefile
bind/lib/dns/include/dst/Makefile.in
bind/lib/dns/include/dst/dst.h
bind/lib/dns/include/dst/gssapi.h
bind/lib/dns/include/dst/lib.h
bind/lib/dns/include/dst/result.h
bind/lib/dns/iptable.c
bind/lib/dns/journal.c
bind/lib/dns/key.c
bind/lib/dns/keytable.c
bind/lib/dns/lib.c
bind/lib/dns/log.c
bind/lib/dns/lookup.c
bind/lib/dns/master.c
bind/lib/dns/masterdump.c
bind/lib/dns/message.c
bind/lib/dns/name.c
bind/lib/dns/ncache.c
bind/lib/dns/nsec.c
bind/lib/dns/nsec3.c
bind/lib/dns/openssl_link.c
bind/lib/dns/openssldh_link.c
bind/lib/dns/openssldsa_link.c
bind/lib/dns/opensslrsa_link.c
bind/lib/dns/order.c
bind/lib/dns/peer.c
bind/lib/dns/portlist.c
bind/lib/dns/rbt.c
bind/lib/dns/rbtdb.c
bind/lib/dns/rbtdb.h
bind/lib/dns/rbtdb64.c
bind/lib/dns/rbtdb64.h
bind/lib/dns/rcode.c
bind/lib/dns/rdata.c
bind/lib/dns/rdata/any_255/tsig_250.c
bind/lib/dns/rdata/any_255/tsig_250.h
bind/lib/dns/rdata/ch_3/a_1.c
bind/lib/dns/rdata/ch_3/a_1.h
bind/lib/dns/rdata/generic/afsdb_18.c
bind/lib/dns/rdata/generic/afsdb_18.h
bind/lib/dns/rdata/generic/cert_37.c
bind/lib/dns/rdata/generic/cert_37.h
bind/lib/dns/rdata/generic/cname_5.c
bind/lib/dns/rdata/generic/cname_5.h
bind/lib/dns/rdata/generic/dlv_32769.c
bind/lib/dns/rdata/generic/dlv_32769.h
bind/lib/dns/rdata/generic/dname_39.c
bind/lib/dns/rdata/generic/dname_39.h
bind/lib/dns/rdata/generic/dnskey_48.c
bind/lib/dns/rdata/generic/dnskey_48.h
bind/lib/dns/rdata/generic/ds_43.c
bind/lib/dns/rdata/generic/ds_43.h
bind/lib/dns/rdata/generic/gpos_27.c
bind/lib/dns/rdata/generic/gpos_27.h
bind/lib/dns/rdata/generic/hinfo_13.c
bind/lib/dns/rdata/generic/hinfo_13.h
bind/lib/dns/rdata/generic/ipseckey_45.c
bind/lib/dns/rdata/generic/ipseckey_45.h
bind/lib/dns/rdata/generic/isdn_20.c
bind/lib/dns/rdata/generic/isdn_20.h
bind/lib/dns/rdata/generic/key_25.c
bind/lib/dns/rdata/generic/key_25.h
bind/lib/dns/rdata/generic/loc_29.c
bind/lib/dns/rdata/generic/loc_29.h
bind/lib/dns/rdata/generic/mb_7.c
bind/lib/dns/rdata/generic/mb_7.h
bind/lib/dns/rdata/generic/md_3.c
bind/lib/dns/rdata/generic/md_3.h
bind/lib/dns/rdata/generic/mf_4.c
bind/lib/dns/rdata/generic/mf_4.h
bind/lib/dns/rdata/generic/mg_8.c
bind/lib/dns/rdata/generic/mg_8.h
bind/lib/dns/rdata/generic/minfo_14.c
bind/lib/dns/rdata/generic/minfo_14.h
bind/lib/dns/rdata/generic/mr_9.c
bind/lib/dns/rdata/generic/mr_9.h
bind/lib/dns/rdata/generic/mx_15.c
bind/lib/dns/rdata/generic/mx_15.h
bind/lib/dns/rdata/generic/ns_2.c
bind/lib/dns/rdata/generic/ns_2.h
bind/lib/dns/rdata/generic/nsec3_50.c
bind/lib/dns/rdata/generic/nsec3_50.h
bind/lib/dns/rdata/generic/nsec3param_51.c
bind/lib/dns/rdata/generic/nsec3param_51.h
bind/lib/dns/rdata/generic/nsec_47.c
bind/lib/dns/rdata/generic/nsec_47.h
bind/lib/dns/rdata/generic/null_10.c
bind/lib/dns/rdata/generic/null_10.h
bind/lib/dns/rdata/generic/nxt_30.c
bind/lib/dns/rdata/generic/nxt_30.h
bind/lib/dns/rdata/generic/opt_41.c
bind/lib/dns/rdata/generic/opt_41.h
bind/lib/dns/rdata/generic/proforma.c
bind/lib/dns/rdata/generic/proforma.h
bind/lib/dns/rdata/generic/ptr_12.c
bind/lib/dns/rdata/generic/ptr_12.h
bind/lib/dns/rdata/generic/rp_17.c
bind/lib/dns/rdata/generic/rp_17.h
bind/lib/dns/rdata/generic/rrsig_46.c
bind/lib/dns/rdata/generic/rrsig_46.h
bind/lib/dns/rdata/generic/rt_21.c
bind/lib/dns/rdata/generic/rt_21.h
bind/lib/dns/rdata/generic/sig_24.c
bind/lib/dns/rdata/generic/sig_24.h
bind/lib/dns/rdata/generic/soa_6.c
bind/lib/dns/rdata/generic/soa_6.h
bind/lib/dns/rdata/generic/spf_99.c
bind/lib/dns/rdata/generic/spf_99.h
bind/lib/dns/rdata/generic/sshfp_44.c
bind/lib/dns/rdata/generic/sshfp_44.h
bind/lib/dns/rdata/generic/tkey_249.c
bind/lib/dns/rdata/generic/tkey_249.h
bind/lib/dns/rdata/generic/txt_16.c
bind/lib/dns/rdata/generic/txt_16.h
bind/lib/dns/rdata/generic/unspec_103.c
bind/lib/dns/rdata/generic/unspec_103.h
bind/lib/dns/rdata/generic/x25_19.c
bind/lib/dns/rdata/generic/x25_19.h
bind/lib/dns/rdata/hs_4/a_1.c
bind/lib/dns/rdata/hs_4/a_1.h
bind/lib/dns/rdata/in_1/a6_38.c
bind/lib/dns/rdata/in_1/a6_38.h
bind/lib/dns/rdata/in_1/a_1.c
bind/lib/dns/rdata/in_1/a_1.h
bind/lib/dns/rdata/in_1/aaaa_28.c
bind/lib/dns/rdata/in_1/aaaa_28.h
bind/lib/dns/rdata/in_1/apl_42.c
bind/lib/dns/rdata/in_1/apl_42.h
bind/lib/dns/rdata/in_1/dhcid_49.c
bind/lib/dns/rdata/in_1/dhcid_49.h
bind/lib/dns/rdata/in_1/kx_36.c
bind/lib/dns/rdata/in_1/kx_36.h
bind/lib/dns/rdata/in_1/naptr_35.c
bind/lib/dns/rdata/in_1/naptr_35.h
bind/lib/dns/rdata/in_1/nsap-ptr_23.c
bind/lib/dns/rdata/in_1/nsap-ptr_23.h
bind/lib/dns/rdata/in_1/nsap_22.c
bind/lib/dns/rdata/in_1/nsap_22.h
bind/lib/dns/rdata/in_1/px_26.c
bind/lib/dns/rdata/in_1/px_26.h
bind/lib/dns/rdata/in_1/srv_33.c
bind/lib/dns/rdata/in_1/srv_33.h
bind/lib/dns/rdata/in_1/wks_11.c
bind/lib/dns/rdata/in_1/wks_11.h
bind/lib/dns/rdata/rdatastructpre.h
bind/lib/dns/rdata/rdatastructsuf.h
bind/lib/dns/rdatalist.c
bind/lib/dns/rdatalist_p.h
bind/lib/dns/rdataset.c
bind/lib/dns/rdatasetiter.c
bind/lib/dns/rdataslab.c
bind/lib/dns/request.c
bind/lib/dns/resolver.c
bind/lib/dns/result.c
bind/lib/dns/rootns.c
bind/lib/dns/sdb.c
bind/lib/dns/sdlz.c
bind/lib/dns/soa.c
bind/lib/dns/spnego.asn1
bind/lib/dns/spnego.c
bind/lib/dns/spnego.h
bind/lib/dns/spnego_asn1.c
bind/lib/dns/spnego_asn1.pl
bind/lib/dns/ssu.c
bind/lib/dns/stats.c
bind/lib/dns/tcpmsg.c
bind/lib/dns/time.c
bind/lib/dns/timer.c
bind/lib/dns/tkey.c
bind/lib/dns/tsig.c
bind/lib/dns/ttl.c
bind/lib/dns/validator.c
bind/lib/dns/version.c
bind/lib/dns/view.c
bind/lib/dns/xfrin.c
bind/lib/dns/zone.c
bind/lib/dns/zonekey.c
bind/lib/dns/zt.c
bind/lib/isc/Makefile
bind/lib/isc/Makefile.in
bind/lib/isc/alpha/Makefile.in
bind/lib/isc/alpha/include/Makefile.in
bind/lib/isc/alpha/include/isc/Makefile.in
bind/lib/isc/alpha/include/isc/atomic.h
bind/lib/isc/api
bind/lib/isc/assertions.c
bind/lib/isc/base32.c
bind/lib/isc/base64.c
bind/lib/isc/bitstring.c
bind/lib/isc/buffer.c
bind/lib/isc/bufferlist.c
bind/lib/isc/commandline.c
bind/lib/isc/entropy.c
bind/lib/isc/error.c
bind/lib/isc/event.c
bind/lib/isc/fsaccess.c
bind/lib/isc/hash.c
bind/lib/isc/heap.c
bind/lib/isc/hex.c
bind/lib/isc/hmacmd5.c
bind/lib/isc/hmacsha.c
bind/lib/isc/httpd.c
bind/lib/isc/ia64/Makefile.in
bind/lib/isc/ia64/include/Makefile.in
bind/lib/isc/ia64/include/isc/Makefile.in
bind/lib/isc/ia64/include/isc/atomic.h
bind/lib/isc/include/Makefile
bind/lib/isc/include/Makefile.in
bind/lib/isc/include/isc/Makefile
bind/lib/isc/include/isc/Makefile.in
bind/lib/isc/include/isc/app.h
bind/lib/isc/include/isc/assertions.h
bind/lib/isc/include/isc/base32.h
bind/lib/isc/include/isc/base64.h
bind/lib/isc/include/isc/bitstring.h
bind/lib/isc/include/isc/boolean.h
bind/lib/isc/include/isc/buffer.h
bind/lib/isc/include/isc/bufferlist.h
bind/lib/isc/include/isc/commandline.h
bind/lib/isc/include/isc/entropy.h
bind/lib/isc/include/isc/error.h
bind/lib/isc/include/isc/event.h
bind/lib/isc/include/isc/eventclass.h
bind/lib/isc/include/isc/file.h
bind/lib/isc/include/isc/formatcheck.h
bind/lib/isc/include/isc/fsaccess.h
bind/lib/isc/include/isc/hash.h
bind/lib/isc/include/isc/heap.h
bind/lib/isc/include/isc/hex.h
bind/lib/isc/include/isc/hmacmd5.h
bind/lib/isc/include/isc/hmacsha.h
bind/lib/isc/include/isc/httpd.h
bind/lib/isc/include/isc/interfaceiter.h
bind/lib/isc/include/isc/ipv6.h
bind/lib/isc/include/isc/iterated_hash.h
bind/lib/isc/include/isc/lang.h
bind/lib/isc/include/isc/lex.h
bind/lib/isc/include/isc/lfsr.h
bind/lib/isc/include/isc/lib.h
bind/lib/isc/include/isc/list.h
bind/lib/isc/include/isc/log.h
bind/lib/isc/include/isc/magic.h
bind/lib/isc/include/isc/md5.h
bind/lib/isc/include/isc/mem.h
bind/lib/isc/include/isc/msgcat.h
bind/lib/isc/include/isc/msgs.h
bind/lib/isc/include/isc/mutexblock.h
bind/lib/isc/include/isc/netaddr.h
bind/lib/isc/include/isc/netscope.h
bind/lib/isc/include/isc/ondestroy.h
bind/lib/isc/include/isc/os.h
bind/lib/isc/include/isc/parseint.h
bind/lib/isc/include/isc/platform.h
bind/lib/isc/include/isc/platform.h.in
bind/lib/isc/include/isc/portset.h
bind/lib/isc/include/isc/print.h
bind/lib/isc/include/isc/quota.h
bind/lib/isc/include/isc/radix.h
bind/lib/isc/include/isc/random.h
bind/lib/isc/include/isc/ratelimiter.h
bind/lib/isc/include/isc/refcount.h
bind/lib/isc/include/isc/region.h
bind/lib/isc/include/isc/resource.h
bind/lib/isc/include/isc/result.h
bind/lib/isc/include/isc/resultclass.h
bind/lib/isc/include/isc/rwlock.h
bind/lib/isc/include/isc/serial.h
bind/lib/isc/include/isc/sha1.h
bind/lib/isc/include/isc/sha2.h
bind/lib/isc/include/isc/sockaddr.h
bind/lib/isc/include/isc/socket.h
bind/lib/isc/include/isc/stats.h
bind/lib/isc/include/isc/stdio.h
bind/lib/isc/include/isc/stdlib.h
bind/lib/isc/include/isc/string.h
bind/lib/isc/include/isc/symtab.h
bind/lib/isc/include/isc/task.h
bind/lib/isc/include/isc/taskpool.h
bind/lib/isc/include/isc/timer.h
bind/lib/isc/include/isc/types.h
bind/lib/isc/include/isc/util.h
bind/lib/isc/include/isc/version.h
bind/lib/isc/include/isc/xml.h
bind/lib/isc/inet_aton.c
bind/lib/isc/inet_ntop.c
bind/lib/isc/inet_pton.c
bind/lib/isc/iterated_hash.c
bind/lib/isc/lex.c
bind/lib/isc/lfsr.c
bind/lib/isc/lib.c
bind/lib/isc/log.c
bind/lib/isc/md5.c
bind/lib/isc/mem.c
bind/lib/isc/mips/Makefile.in
bind/lib/isc/mips/include/Makefile.in
bind/lib/isc/mips/include/isc/Makefile.in
bind/lib/isc/mips/include/isc/atomic.h
bind/lib/isc/mutexblock.c
bind/lib/isc/netaddr.c
bind/lib/isc/netscope.c
bind/lib/isc/nls/Makefile
bind/lib/isc/nls/Makefile.in
bind/lib/isc/nls/msgcat.c
bind/lib/isc/noatomic/Makefile.in
bind/lib/isc/noatomic/include/Makefile.in
bind/lib/isc/noatomic/include/isc/Makefile.in
bind/lib/isc/noatomic/include/isc/atomic.h
bind/lib/isc/nothreads/Makefile
bind/lib/isc/nothreads/Makefile.in
bind/lib/isc/nothreads/condition.c
bind/lib/isc/nothreads/include/Makefile
bind/lib/isc/nothreads/include/Makefile.in
bind/lib/isc/nothreads/include/isc/Makefile
bind/lib/isc/nothreads/include/isc/Makefile.in
bind/lib/isc/nothreads/include/isc/condition.h
bind/lib/isc/nothreads/include/isc/mutex.h
bind/lib/isc/nothreads/include/isc/once.h
bind/lib/isc/nothreads/include/isc/thread.h
bind/lib/isc/nothreads/mutex.c
bind/lib/isc/nothreads/thread.c
bind/lib/isc/ondestroy.c
bind/lib/isc/parseint.c
bind/lib/isc/portset.c
bind/lib/isc/powerpc/Makefile.in
bind/lib/isc/powerpc/include/Makefile.in
bind/lib/isc/powerpc/include/isc/Makefile.in
bind/lib/isc/powerpc/include/isc/atomic.h
bind/lib/isc/print.c
bind/lib/isc/pthreads/Makefile.in
bind/lib/isc/pthreads/condition.c
bind/lib/isc/pthreads/include/Makefile.in
bind/lib/isc/pthreads/include/isc/Makefile.in
bind/lib/isc/pthreads/include/isc/condition.h
bind/lib/isc/pthreads/include/isc/mutex.h
bind/lib/isc/pthreads/include/isc/once.h
bind/lib/isc/pthreads/include/isc/thread.h
bind/lib/isc/pthreads/mutex.c
bind/lib/isc/pthreads/thread.c
bind/lib/isc/quota.c
bind/lib/isc/radix.c
bind/lib/isc/random.c
bind/lib/isc/ratelimiter.c
bind/lib/isc/refcount.c
bind/lib/isc/region.c
bind/lib/isc/result.c
bind/lib/isc/rwlock.c
bind/lib/isc/serial.c
bind/lib/isc/sha1.c
bind/lib/isc/sha2.c
bind/lib/isc/sockaddr.c
bind/lib/isc/sparc64/Makefile.in
bind/lib/isc/sparc64/include/Makefile.in
bind/lib/isc/sparc64/include/isc/Makefile.in
bind/lib/isc/sparc64/include/isc/atomic.h
bind/lib/isc/stats.c
bind/lib/isc/string.c
bind/lib/isc/strtoul.c
bind/lib/isc/symtab.c
bind/lib/isc/task.c
bind/lib/isc/task_p.h
bind/lib/isc/taskpool.c
bind/lib/isc/timer.c
bind/lib/isc/timer_p.h
bind/lib/isc/unix/Makefile
bind/lib/isc/unix/Makefile.in
bind/lib/isc/unix/app.c
bind/lib/isc/unix/dir.c
bind/lib/isc/unix/entropy.c
bind/lib/isc/unix/errno2result.c
bind/lib/isc/unix/errno2result.h
bind/lib/isc/unix/file.c
bind/lib/isc/unix/fsaccess.c
bind/lib/isc/unix/ifiter_getifaddrs.c
bind/lib/isc/unix/ifiter_ioctl.c
bind/lib/isc/unix/ifiter_sysctl.c
bind/lib/isc/unix/include/Makefile
bind/lib/isc/unix/include/Makefile.in
bind/lib/isc/unix/include/isc/Makefile
bind/lib/isc/unix/include/isc/Makefile.in
bind/lib/isc/unix/include/isc/dir.h
bind/lib/isc/unix/include/isc/int.h
bind/lib/isc/unix/include/isc/keyboard.h
bind/lib/isc/unix/include/isc/net.h
bind/lib/isc/unix/include/isc/netdb.h
bind/lib/isc/unix/include/isc/offset.h
bind/lib/isc/unix/include/isc/stat.h
bind/lib/isc/unix/include/isc/stdtime.h
bind/lib/isc/unix/include/isc/strerror.h
bind/lib/isc/unix/include/isc/syslog.h
bind/lib/isc/unix/include/isc/time.h
bind/lib/isc/unix/interfaceiter.c
bind/lib/isc/unix/ipv6.c
bind/lib/isc/unix/keyboard.c
bind/lib/isc/unix/net.c
bind/lib/isc/unix/os.c
bind/lib/isc/unix/resource.c
bind/lib/isc/unix/socket.c
bind/lib/isc/unix/socket_p.h
bind/lib/isc/unix/stdio.c
bind/lib/isc/unix/stdtime.c
bind/lib/isc/unix/strerror.c
bind/lib/isc/unix/syslog.c
bind/lib/isc/unix/time.c
bind/lib/isc/version.c
bind/lib/isc/x86_32/Makefile
bind/lib/isc/x86_32/Makefile.in
bind/lib/isc/x86_32/include/Makefile
bind/lib/isc/x86_32/include/Makefile.in
bind/lib/isc/x86_32/include/isc/Makefile
bind/lib/isc/x86_32/include/isc/Makefile.in
bind/lib/isc/x86_32/include/isc/atomic.h
bind/lib/isc/x86_64/Makefile.in
bind/lib/isc/x86_64/include/Makefile.in
bind/lib/isc/x86_64/include/isc/Makefile.in
bind/lib/isc/x86_64/include/isc/atomic.h
bind/lib/isccc/Makefile
bind/lib/isccc/Makefile.in
bind/lib/isccc/alist.c
bind/lib/isccc/api
bind/lib/isccc/base64.c
bind/lib/isccc/cc.c
bind/lib/isccc/ccmsg.c
bind/lib/isccc/include/Makefile
bind/lib/isccc/include/Makefile.in
bind/lib/isccc/include/isccc/Makefile
bind/lib/isccc/include/isccc/Makefile.in
bind/lib/isccc/include/isccc/alist.h
bind/lib/isccc/include/isccc/base64.h
bind/lib/isccc/include/isccc/cc.h
bind/lib/isccc/include/isccc/ccmsg.h
bind/lib/isccc/include/isccc/events.h
bind/lib/isccc/include/isccc/lib.h
bind/lib/isccc/include/isccc/result.h
bind/lib/isccc/include/isccc/sexpr.h
bind/lib/isccc/include/isccc/symtab.h
bind/lib/isccc/include/isccc/symtype.h
bind/lib/isccc/include/isccc/types.h
bind/lib/isccc/include/isccc/util.h
bind/lib/isccc/include/isccc/version.h
bind/lib/isccc/lib.c
bind/lib/isccc/result.c
bind/lib/isccc/sexpr.c
bind/lib/isccc/symtab.c
bind/lib/isccc/version.c
bind/lib/isccfg/Makefile
bind/lib/isccfg/Makefile.in
bind/lib/isccfg/aclconf.c
bind/lib/isccfg/api
bind/lib/isccfg/include/Makefile
bind/lib/isccfg/include/Makefile.in
bind/lib/isccfg/include/isccfg/Makefile
bind/lib/isccfg/include/isccfg/Makefile.in
bind/lib/isccfg/include/isccfg/aclconf.h
bind/lib/isccfg/include/isccfg/cfg.h
bind/lib/isccfg/include/isccfg/grammar.h
bind/lib/isccfg/include/isccfg/log.h
bind/lib/isccfg/include/isccfg/namedconf.h
bind/lib/isccfg/include/isccfg/version.h
bind/lib/isccfg/log.c
bind/lib/isccfg/namedconf.c
bind/lib/isccfg/parser.c
bind/lib/isccfg/version.c
bind/lib/lwres/Makefile
bind/lib/lwres/Makefile.in
bind/lib/lwres/api
bind/lib/lwres/assert_p.h
bind/lib/lwres/context.c
bind/lib/lwres/context_p.h
bind/lib/lwres/gai_strerror.c
bind/lib/lwres/getaddrinfo.c
bind/lib/lwres/gethost.c
bind/lib/lwres/getipnode.c
bind/lib/lwres/getnameinfo.c
bind/lib/lwres/getrrset.c
bind/lib/lwres/herror.c
bind/lib/lwres/include/Makefile
bind/lib/lwres/include/Makefile.in
bind/lib/lwres/include/lwres/Makefile
bind/lib/lwres/include/lwres/Makefile.in
bind/lib/lwres/include/lwres/context.h
bind/lib/lwres/include/lwres/int.h
bind/lib/lwres/include/lwres/ipv6.h
bind/lib/lwres/include/lwres/lang.h
bind/lib/lwres/include/lwres/list.h
bind/lib/lwres/include/lwres/lwbuffer.h
bind/lib/lwres/include/lwres/lwpacket.h
bind/lib/lwres/include/lwres/lwres.h
bind/lib/lwres/include/lwres/netdb.h
bind/lib/lwres/include/lwres/netdb.h.in
bind/lib/lwres/include/lwres/platform.h
bind/lib/lwres/include/lwres/platform.h.in
bind/lib/lwres/include/lwres/result.h
bind/lib/lwres/include/lwres/stdlib.h
bind/lib/lwres/include/lwres/version.h
bind/lib/lwres/lwbuffer.c
bind/lib/lwres/lwconfig.c
bind/lib/lwres/lwinetaton.c
bind/lib/lwres/lwinetntop.c
bind/lib/lwres/lwinetpton.c
bind/lib/lwres/lwpacket.c
bind/lib/lwres/lwres_gabn.c
bind/lib/lwres/lwres_gnba.c
bind/lib/lwres/lwres_grbn.c
bind/lib/lwres/lwres_noop.c
bind/lib/lwres/lwresutil.c
bind/lib/lwres/print.c
bind/lib/lwres/print_p.h
bind/lib/lwres/strtoul.c
bind/lib/lwres/unix/Makefile
bind/lib/lwres/unix/Makefile.in
bind/lib/lwres/unix/include/Makefile
bind/lib/lwres/unix/include/Makefile.in
bind/lib/lwres/unix/include/lwres/Makefile
bind/lib/lwres/unix/include/lwres/Makefile.in
bind/lib/lwres/unix/include/lwres/net.h
bind/lib/lwres/version.c
16d5c24e 07-Jul-2009 Oliver Tappe <zooey@hirschkaefer.de>

* merged 32bit-wchar_t branches of buildtools and haiku back into
the respective trunk

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31443 a95241bf-73f2-0310-859d-f6bbb57e9c96

d5f3f511 05-Jun-2009 Axel Dörfler <axeld@pinc-software.de>

* Fixed wrong localhost. This fixes bug #3990.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30964 a95241bf-73f2-0310-859d-f6bbb57e9c96

65634190 01-Jun-2009 Axel Dörfler <axeld@pinc-software.de>

* Reintroduced the find_own_image() function, as I think this is the cleaner
approach.
* Made get_next_line() static as it should have been in the first place.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30941 a95241bf-73f2-0310-859d-f6bbb57e9c96

9738f996 29-May-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Removed unused find_own_image().
* sv_rewind(): Init the cookie to 0 before using it for get_next_image_info()
iteration. This could cause the function not to find the libnetwork path and
thus fail to open the "services" attribute. The getserv*() functions would
always fail and the net server wouldn't be able to listen on the telnet and
ftp ports.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30922 a95241bf-73f2-0310-859d-f6bbb57e9c96

563db5d4 03-Apr-2009 Axel Dörfler <axeld@pinc-software.de>

* Removed old network stuff.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29874 a95241bf-73f2-0310-859d-f6bbb57e9c96


old/Jamfile
old/README.html
old/compat/Jamfile
old/compat/libbind/DEVNOTES
old/compat/libbind/Jamfile
old/compat/libbind/config.h
old/compat/libbind/headers/fd_setsize.h
old/compat/libbind/headers/irp.h
old/compat/libbind/headers/irs.h
old/compat/libbind/headers/isc/assertions.h
old/compat/libbind/headers/isc/ctl.h
old/compat/libbind/headers/isc/dst.h
old/compat/libbind/headers/isc/eventlib.h
old/compat/libbind/headers/isc/heap.h
old/compat/libbind/headers/isc/irpmarshall.h
old/compat/libbind/headers/isc/list.h
old/compat/libbind/headers/isc/logging.h
old/compat/libbind/headers/isc/memcluster.h
old/compat/libbind/headers/isc/misc.h
old/compat/libbind/headers/isc/tree.h
old/compat/libbind/headers/res_update.h
old/compat/libbind/headers/sys/un.h
old/compat/libbind/headers/utmp.h
old/compat/libbind/port_after.h
old/compat/libbind/port_before.h
old/compat/libnet/Jamfile
old/compat/libnet/arc4random.c
old/compat/libnet/base64.c
old/compat/libnet/compat.c
old/compat/libnet/ethers.c
old/compat/libnet/freeaddrinfo.c
old/compat/libnet/getaddrinfo.c
old/compat/libnet/gethostnamadr.c
old/compat/libnet/getnameinfo.c
old/compat/libnet/getnetbyaddr.c
old/compat/libnet/getnetbyname.c
old/compat/libnet/getnetent.c
old/compat/libnet/getnetnamadr.c
old/compat/libnet/getproto.c
old/compat/libnet/getprotoent.c
old/compat/libnet/getprotoname.c
old/compat/libnet/getservbyname.c
old/compat/libnet/getservbyport.c
old/compat/libnet/getservent.c
old/compat/libnet/headers/arpa/inet.h
old/compat/libnet/headers/arpa/nameser.h
old/compat/libnet/headers/netdb.h
old/compat/libnet/headers/resolv.h
old/compat/libnet/inet_addr.c
old/compat/libnet/inet_lnaof.c
old/compat/libnet/inet_neta.c
old/compat/libnet/inet_netof.c
old/compat/libnet/inet_network.c
old/compat/libnet/inet_ntoa.c
old/compat/libnet/inet_ntop.c
old/compat/libnet/inet_pton.c
old/compat/libnet/linkaddr.c
old/compat/libnet/netconfig.c
old/compat/libnet/netdebug.c
old/compat/libnet/networks
old/compat/libnet/poll.c
old/compat/libnet/protocols
old/compat/libnet/res_comp.c
old/compat/libnet/res_data.c
old/compat/libnet/res_debug.c
old/compat/libnet/res_init.c
old/compat/libnet/res_mkquery.c
old/compat/libnet/res_query.c
old/compat/libnet/res_random.c
old/compat/libnet/res_send.c
old/compat/libnet/resolv.conf
old/compat/libnet/select.c
old/compat/libnet/services
old/compat/libnet/sethostent.c
old/compat/libnet/socket.c
old/compat/libsocket/Jamfile
old/compat/libsocket/socket.c
old/install.sh
ef93221d 24-Jan-2009 Bruno G. Albuquerque <bga@bug-br.org.br>

- Now NetBuffer and DynamicBuffer agree and the smallest buffer size posible.
- This means that buffers with a initial size of 0 work now.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29006 a95241bf-73f2-0310-859d-f6bbb57e9c96

fff09387 18-Jan-2009 Rene Gollent <anevilyak@gmail.com>

Another GCC4-related strndup fix.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28947 a95241bf-73f2-0310-859d-f6bbb57e9c96

4650eca2 17-Jan-2009 Bruno G. Albuquerque <bga@bug-br.org.br>

- Implemented some suggestions by stippi.
- Corrected some bugs also pointed by him.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28933 a95241bf-73f2-0310-859d-f6bbb57e9c96

31562415 17-Jan-2009 Karsten Heimrich <host.haiku@gmx.de>

* fix gcc4 build



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28931 a95241bf-73f2-0310-859d-f6bbb57e9c96

d254c83c 17-Jan-2009 Bruno G. Albuquerque <bga@bug-br.org.br>

- Changed BNetBuffer to a simpler (and R5 compatible) implementation.
- This has the side effect that now it actually works.
- This also indirectly fix BNetEndpoint usage of BNetBuffer.
- Added DynamicBuffer (the underlying buffer implementation) to the Jamfile.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28928 a95241bf-73f2-0310-859d-f6bbb57e9c96

a12096e5 17-Jan-2009 Bruno G. Albuquerque <bga@bug-br.org.br>

- Got it to actually compile.
- Default buffer size is now set to 1 instead of 0, which would cause the
construction without a given size to fail.
- Added copy constructor.
- Changed _GrowToFit() to have a boolean parameter to indicate if we want
to resize the buffer to an exact size. Used by the copy constructor.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28924 a95241bf-73f2-0310-859d-f6bbb57e9c96

b93465f1 17-Jan-2009 Bruno G. Albuquerque <bga@bug-br.org.br>

- Ops... Missed some.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28920 a95241bf-73f2-0310-859d-f6bbb57e9c96

c98ce75f 17-Jan-2009 Bruno G. Albuquerque <bga@bug-br.org.br>

- Fixed style violations pointed by stippi.
- Use std:nothrow for new calls.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28919 a95241bf-73f2-0310-859d-f6bbb57e9c96

550d2417 17-Jan-2009 Bruno G. Albuquerque <bga@bug-br.org.br>

- Simple dynamic buffer class implementation.
- Will be used by the new (R5 compatible) NetBuffer class.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28918 a95241bf-73f2-0310-859d-f6bbb57e9c96

d68ffded 27-Dec-2008 Axel Dörfler <axeld@pinc-software.de>

* More or less completed the network notification module - it does not remove
old invalid user listeners yet, though (ie. if a team dies).
* Implemented userland network monitor functions.
* Added a few notifications to the network stack, even though this part isn't
complete yet (especially notify_interface_changed()).
* Added optional debug output to the notifications module.
* Added the module to the image, it basically works now (tested).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28825 a95241bf-73f2-0310-859d-f6bbb57e9c96

c9e62886 23-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Fixed every (hopefully) CID cases of delete where delete[] should have been used. CID 122, 123, 124, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 142, 143, 144, 147, 148, 149, 150

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27703 a95241bf-73f2-0310-859d-f6bbb57e9c96

9ad1415e 17-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* Use addr_t instead of int32, since we're dealing with addresses here, and this
way it wouldn't work on 64 bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27000 a95241bf-73f2-0310-859d-f6bbb57e9c96

49a22456 13-Jul-2008 Oliver Tappe <zooey@hirschkaefer.de>

Overhauled BNetEndpoint implementation (and BNetAddress, too):
* added NetEndpointTest that exposed a couple of bugs
* fixed several bugs in the implementation of BNetEndpoint, some of which kept
NetPenguin from working
* fixed a couple of constness issues in BNetEndpoint and BNetAddress


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26405 a95241bf-73f2-0310-859d-f6bbb57e9c96

aebcc506 10-Jul-2008 Oliver Tappe <zooey@hirschkaefer.de>

Corrected by previous assumption, since gethostbyname() has nothing to do with
struct sockaddr_in - the real culprits were BNetAddress::GetAddr(sockaddr_in&)
and BNetAddress::SetTo(const sockaddr_in&):
* moved check_r5_compatibility() into r5_compatibility.h to make that function
available to BNetAddress, too
* adjusted sockaddr_in-handling methods of BNetAddress to deal with R5-addresses
if in compatibility mode
* removed is_r5_sockaddr() again, since it is no longer needed

With this less hacky solution, Beam, NetPositive, NetworkTime and Vision still work. So, there's hope that the R5 compatibility layer is now complete.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26377 a95241bf-73f2-0310-859d-f6bbb57e9c96

a0429077 07-Jul-2008 Oliver Tappe <zooey@hirschkaefer.de>

* removed debuggin leftover


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26311 a95241bf-73f2-0310-859d-f6bbb57e9c96

3ad86c7f 07-Jul-2008 Oliver Tappe <zooey@hirschkaefer.de>

Fixed R5 compatibility "layer" in libnetwork:
* instead of always converting from the expected r5_sockaddr_in to haiku's own,
we now explicitly check whether or not the given sockaddr is an r5_sockaddr_in
or not, naturally doing the conversion only if it is. This is necessary since
even R5 applications may not always pass in r5_sockaddr_in structs (as for
instance gethostbyname() will return a native [haiku-]sockaddr_in)
* cleaned up the confusion between the name r5addr and it's actual meaning
(holding a haiku sockaddr_in) - renaming it to haikuAddr instead
* undid the part of Ingo's r25489 described as: "Extended R5 compatibility
check to also consider calls from libbnetapi" - as I fail to see why this
would be desirable and in fact it stops at least Beam from working.
Ingo: if you can remember, please enlighten me what was the reason behind
this change.
This finally makes Beam "work" (well: connect to servers and download mails ;-)
Vision, NetworkTime and NetPositive are still working, too, so hopefully there
are no regressions.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26303 a95241bf-73f2-0310-859d-f6bbb57e9c96

7da7c459 06-Jul-2008 Oliver Tappe <zooey@hirschkaefer.de>

* when finding out whether or not R5 compatibility mode is required, we may have
to scan loaded libraries, too, as the dependency on network libraries may not
be present in the executable image, but may be "hidden" in one of those
library images (as is the case with Beam).



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26277 a95241bf-73f2-0310-859d-f6bbb57e9c96

1aa3d2e3 05-Jul-2008 Oliver Tappe <zooey@hirschkaefer.de>

Resolved a couple of problems in BNetAddress implementation:
* fixed several byte order inconsistencies, it does not make sense to always
convert the byte order input/output values - no we convert where it can
be expected and leave it where it is confusing
* fixed size inconsistencies with respect to family and port, both of which
were sometimes handled as int8, as int16 and as int32 in different places
(now they are always int16)
These fixes make Beam connect to the correct address and port, but it still doesn't work, as it seems to be using UDP instead of TCP (doh!). Will look into that tomorrow.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26269 a95241bf-73f2-0310-859d-f6bbb57e9c96

07ddcd64 14-May-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Renamed libnetapi to libbnetapi. Create a symlink in the image.
* Extended R5 compatibility check to also consider calls from
libbnetapi.
* Fixed incorrect R5 compatibility check in BNetEndpoint constructor.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25489 a95241bf-73f2-0310-859d-f6bbb57e9c96

6b202f4e 13-May-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Introduced new header directory headers/private/system which is supposed
to contain headers shared by kernel and userland (mainly libroot).
* Moved quite a few private kernel headers to the new location. Split
several kernel headers into a shared part and one that is still kernel
private. Adjusted all affected Jamfiles and source in the standard x86
build accordingly. The build for other architectures and for test code
may be broken.
* Quite a bit of userland code still includes private kernel headers.
Mostly those are <util/*> headers. The ones that aren't strictly
kernel-only should be moved to some other place (maybe
headers/private/shared/util).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25486 a95241bf-73f2-0310-859d-f6bbb57e9c96

9b4fea7e 13-May-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Made libnetapi a separate library again.
* The built-in services are no longer added as resource to libnetwork,
but as attribute. This removes the libbe dependency.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25485 a95241bf-73f2-0310-859d-f6bbb57e9c96

d6e06540 26-Apr-2008 Jérôme Duval <korli@users.berlios.de>

style cleanup


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25175 a95241bf-73f2-0310-859d-f6bbb57e9c96

e33471b4 19-Apr-2008 François Revol <revol@free.fr>

This should fix building libnetwork.so, we don't have the net_api header anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25059 a95241bf-73f2-0310-859d-f6bbb57e9c96

df50f7a9 10-Apr-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Changed the way the socket functions work:
- The net_stack driver is no longer used. Instead we have a kernel
module which is directly used by syscall implementations in the
kernel. I.e. we no longer tunnel those functions through ioctls, but
have normal syscalls.
- Removed the superfluous net starter module.
- Implemented the FDTYPE_SOCKET type file_descriptors, that is sockets
are no longer vnode based.
- Adjusted libnetwork (the socket function implementations)
accordingly.
- Adjusted netstat accordingly.
* Socket module:
- Implemented socketpair().
- Added "kernel" parameter to the control hook. Quite a few more hooks
would actually need the parameter, but I didn't change those yet,
since that would probably also require changes to the protocol
module interface.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24908 a95241bf-73f2-0310-859d-f6bbb57e9c96

f8cb3071 02-Apr-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Replaced the dummy implementations of the <grp.h> and <pwd.h>
functions by ones reading /etc/{group,passwd}.
* Added quasi-standard getpwent_r() and getgrent_r().
* Added _SC_GETGR_R_SIZE_MAX and _SC_GETPW_R_SIZE_MAX sysconf()
constants.
* Moved initgroups() and getgrouplist() definition to grp.cpp. They use
the same backend as the <grp.h> functions.
* Set the permissions of files created by the build system to what they
should be on the image (executables: 755, others: 644). Otherwise only
root could do anything under Haiku.
* Added build system variables HAIKU_ROOT_USER_NAME and
HAIKU_ROOT_USER_REAL_NAME to customize name and real name of Haiku's
root user.
* Added build system rules AddUserToHaikuImage and AddGroupToHaikuImage
for adding additional users and groups (by default only root user and
group and a "users" group are created).
* Adjusted BIND port and coreutils config.h files according to what
features have become available.
* Fixed HAIKU_DOCUMENTATION_OBJECT_DIR definition. Untested, but it used
a wrong variable name before.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24750 a95241bf-73f2-0310-859d-f6bbb57e9c96

290946ce 29-Mar-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Implemented some basics for supplementary groups support:
- The kernel stores the group IDs in the team structure. They are
correctly inherited on fork() and load_image_etc().
- Implemented getgroups() for real, i.e. it retrieves the groups
associated with the process.
- Implemented setgroups(), initgroups() and (the BSDish)
getgrouplist(). The latter two read the group information from the
"group database" /etc/group (if existing).
- Change the BIND port config, since we do have getgrouplist() now.
* The set-uid feature was broken when the path to the executable was
relative, since we used stat(), which, in the kernel, uses the kernel
IO context.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24669 a95241bf-73f2-0310-859d-f6bbb57e9c96

62873764 28-Mar-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Make weak symbols for all those inet_*() functions declared in
<arpa/inet.h>. Since they are renamed to __inet_*() by means of macros
(why anyway?), the functions won't be found e.g. by configure scripts
not including the header. Makes OpenSSH even more happy.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24646 a95241bf-73f2-0310-859d-f6bbb57e9c96

79e1d377 28-Mar-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Not that I know what I'm doing...
Moved nameser_compat.h to our public headers (arpa/inet) and include in
<arpa/nameser.h>. That's solved similarly in BONE. At any rate OpenSSH
is now happy that HEADER exists.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24644 a95241bf-73f2-0310-859d-f6bbb57e9c96

52860002 08-Mar-2008 Axel Dörfler <axeld@pinc-software.de>

Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24309 a95241bf-73f2-0310-859d-f6bbb57e9c96

b0f0bffa 07-Mar-2008 Andrew Bachmann <andrewbachmann@nowhere.fake>

missing this symbol caused a library to not load. implementation taken from old/compat/libnet/netconfig.c, after removing printf.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24301 a95241bf-73f2-0310-859d-f6bbb57e9c96

478ebbd1 19-Jan-2008 Axel Dörfler <axeld@pinc-software.de>

Fixed an endless loop when iterating over all hosts (when there was no
/etc/hosts file).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23660 a95241bf-73f2-0310-859d-f6bbb57e9c96

7d61af89 03-Jan-2008 Axel Dörfler <axeld@pinc-software.de>

h_name must be set, or else libnetwork.so will crash when trying to resolve a name...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23235 a95241bf-73f2-0310-859d-f6bbb57e9c96

68af0a3f 02-Jan-2008 Axel Dörfler <axeld@pinc-software.de>

If there is no /etc/hosts file, we now add a "localhost 127.0.0.1" definition
internally. This fixes #1688.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23218 a95241bf-73f2-0310-859d-f6bbb57e9c96

15ab0bcf 21-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

* int32_t, uint32_t are now of type "int", and no longer of type "long".
This should help to reduce the number of warnings imported code will throw
during compilation (helps a lot with tcpdump, for example).
* Since long is 64 bit on 64 bit platforms, we might want to think about doing
that change for the Haiku types int32 and uint32 as well.
* Fixed several occurences of hidden type problems.
* Fixed build of the stack and TCP under BeOS.
* Fixed incorrect typedef in socket_interface.h.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22643 a95241bf-73f2-0310-859d-f6bbb57e9c96

7e8ac290 12-Aug-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Prefixed the variables NETWORK_LIBS, NETAPI_LIB, and
SELECT_UNAME_ETC_LIB with TARGET_ and introduced HAIKU_* and HOST_*
counterparts.
* Use HOST_NETWORK_LIBS for building remote_disk_server.
* Also got rid of {R5,BONE,DANO,HAIKU}_COMPATIBLE.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21912 a95241bf-73f2-0310-859d-f6bbb57e9c96

77bf99de 23-May-2007 Hugo Santos <hugosantos@nowhere.fake>

fixed the way accept() works in regards to the cookie pointer. It is no longer visible to userspace, we pass the fd instead. Also renamed kernel's shutdown() to system_shutdown as it collides with Posix's shutdown().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21223 a95241bf-73f2-0310-859d-f6bbb57e9c96

75f1f9e0 30-Apr-2007 Hugo Santos <hugosantos@nowhere.fake>

added two more test multicast applications: multicat/multisend. sockaddr_in6/in6_addr must be visible through <netinet/in.h>, fixed that as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20926 a95241bf-73f2-0310-859d-f6bbb57e9c96

6cde6beb 10-Apr-2007 Axel Dörfler <axeld@pinc-software.de>

Fixed several issues pointed out by Olivier "Methe" Milla.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20645 a95241bf-73f2-0310-859d-f6bbb57e9c96

17b77c3b 05-Apr-2007 Hugo Santos <hugosantos@nowhere.fake>

consolidate all RECV/SEND ioctls into a single RECEIVE/SEND pair

- changed the socket module to use thew new RECEIVE/SEND in all forms of recv() and send()
- changed libnetwork to use the new RECEIVE/SEND
- remove transfer_args processing from strace since the structure was removed


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20581 a95241bf-73f2-0310-859d-f6bbb57e9c96

dae7f8ea 04-Apr-2007 Hugo Santos <hugosantos@nowhere.fake>

initial recvmsg and sendmsg implementations


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20562 a95241bf-73f2-0310-859d-f6bbb57e9c96

235a5003 15-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

accept() and bind() now accept NULL address parameters in the R5 compatibility mode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19810 a95241bf-73f2-0310-859d-f6bbb57e9c96

7383c05e 14-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

The R5 socket protocol constant conversion routine was broken - now, NetPositive
is starting to work under Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19807 a95241bf-73f2-0310-859d-f6bbb57e9c96

ef33454c 28-Dec-2006 Axel Dörfler <axeld@pinc-software.de>

* Reverted my change to AddFileDataResource - I obviously missed someone's intentions :-)
* Added a comment about the proper use of the data-file argument.
* Applied Ingo's suggestion to the Jamfile, and it worked out of the box.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19649 a95241bf-73f2-0310-859d-f6bbb57e9c96

c8c228ca 28-Dec-2006 Axel Dörfler <axeld@pinc-software.de>

* Renamed lcl_sv.c to lcl_sv.cpp (local services) to be able to use the
C++ API functions.
* Made some internal headers C++ safe.
* Cleaned up lcl_sv.cpp to only contain what's actually used (in particular,
the IRS_LCL_SV_DB stuff is gone).
* Wrote a basic "services" file and put it into libnetwork.so's resources.
* Updated lcl_sv.cpp to look into the resources if /etc/services doesn't exist.
* Removed the "quasipublic" status of irs_lclsv_fnxt() and made it private.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19644 a95241bf-73f2-0310-859d-f6bbb57e9c96

bcb0dd2b 04-Dec-2006 Axel Dörfler <axeld@pinc-software.de>

The R5 compatibility is now turned off when the socket functions are used
within the library - theoretically, this mechanism could be extended to
turn the compatibility layer on and off based on the images that call the
functions (allowing to mix R5 and BONE network add-ons in a single executable).
This change fixes R5 networking apps such as Vision, and NetworkTime (both
now seem to work fine under Haiku).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19431 a95241bf-73f2-0310-859d-f6bbb57e9c96

379cdb69 30-Nov-2006 Axel Dörfler <axeld@pinc-software.de>

Added _socket_interrupt() for compatibility.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19409 a95241bf-73f2-0310-859d-f6bbb57e9c96

598d9e8d 11-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Added _h_errnop(), fixing bug #898.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19042 a95241bf-73f2-0310-859d-f6bbb57e9c96

127f01dd 10-Oct-2006 Jérôme Duval <korli@users.berlios.de>

fix for gcc4 (strcmp needs cstring, nothrow is in std namespace)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19038 a95241bf-73f2-0310-859d-f6bbb57e9c96

66a1b50b 08-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Forgot to add an 'extern "C"' to the R5 compatibility exports.
This fixes bug #892.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19029 a95241bf-73f2-0310-859d-f6bbb57e9c96

e6a3af04 07-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Added R5 libnet.so specific getusername() and getpassword().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19020 a95241bf-73f2-0310-859d-f6bbb57e9c96

fb4e3730 06-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

* Followed suggestions by Philippe and moved libnetapi.so into libnetwork.so as well.
* Also added libbnetapi.so and libnetapi.so to the R5 compatibility evaluation score.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19016 a95241bf-73f2-0310-859d-f6bbb57e9c96

6a5dcb57 06-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Imported most of the old libnet.so compatibility functions (from old/compat/libnet/compat.c).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19015 a95241bf-73f2-0310-859d-f6bbb57e9c96

e9828bbd 06-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

* libnetapi.so should now work correctly in the R5 compatibility environment.
* Added a link from libbnetapi.so to libnetapi.so. We might think about moving
libnetapi.so into libnetwork.so as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19014 a95241bf-73f2-0310-859d-f6bbb57e9c96

fd589b20 06-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Fixed the build - one of those last minute changes you forgot to compile... :-/


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19013 a95241bf-73f2-0310-859d-f6bbb57e9c96

153b2845 06-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

* Added a link from libnet.so to libnetwork.so for R5 compatibility.
* Fixed R5 socket definitions to match their actual definitions.
* libnetwork.so now detects at runtime wether or not R5 compatibility should be
enabled or not.
* All socket functions should now be R5 net_server compatible.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19012 a95241bf-73f2-0310-859d-f6bbb57e9c96

7d725e0d 19-Sep-2006 Jérôme Duval <korli@users.berlios.de>

added weak symbols for inet_addr and inet_ntoa, normally exported by libnet.so
should be enough for bug #860, feel free to drop them if a libnet.so is created


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18891 a95241bf-73f2-0310-859d-f6bbb57e9c96

241b0480 28-Aug-2006 Axel Dörfler <axeld@pinc-software.de>

* Fixed build of libnetapi.so - it probably won't work for now, though, have a look
at the comment in r5_compatibility.h.
* Intentionally broke source compatibility and removed all that outdated Nettle stuff.
* Also, I took the liberty of making m_init private and rename it to fInit - again, this
will only affect source compatibility.
* Rewrote NetEndpoint.h
* Fixed quite a few small bugs around the code that I touched, for example in NetAddress,
SetTo() never set fInit, and therefore could be wrong.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18680 a95241bf-73f2-0310-859d-f6bbb57e9c96

6fdccb80 28-Aug-2006 Axel Dörfler <axeld@pinc-software.de>

Moved libnetapi.so sources into the src/kit/net/ directory - they don't yet build, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18678 a95241bf-73f2-0310-859d-f6bbb57e9c96

c22d69bf 08-Aug-2006 Axel Dörfler <axeld@pinc-software.de>

* Completed the previous commit and merger of the team/network/new_stack branch.
* Removed ppp_up and pppcontrol from the image for now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18457 a95241bf-73f2-0310-859d-f6bbb57e9c96

5adca30a 07-Aug-2006 Axel Dörfler <axeld@pinc-software.de>

Merge of branches/team/network/new_stack - not yet complete as SVN does only support
replacing files when merging when you don't have deleted them manually (for some reason,
it only works as part of the merge operation, and we didn't copy the whole tree to
have "a fresh start" - next time we know better, at least if SVN still suffers from
that same limitation).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18456 a95241bf-73f2-0310-859d-f6bbb57e9c96


dns/DEVNOTES
dns/Jamfile
dns/config.h
dns/dst/dst_api.c
dns/dst/dst_internal.h
dns/dst/hmac_link.c
dns/dst/md5.h
dns/dst/md5_dgst.c
dns/dst/md5_locl.h
dns/dst/support.c
dns/headers/fd_setsize.h
dns/headers/hesiod.h
dns/headers/irp.h
dns/headers/irs.h
dns/headers/isc/assertions.h
dns/headers/isc/ctl.h
dns/headers/isc/dst.h
dns/headers/isc/eventlib.h
dns/headers/isc/heap.h
dns/headers/isc/irpmarshall.h
dns/headers/isc/list.h
dns/headers/isc/logging.h
dns/headers/isc/memcluster.h
dns/headers/isc/misc.h
dns/headers/isc/tree.h
dns/headers/nameser_compat.h
dns/headers/pthread_emu.h
dns/headers/res_update.h
dns/headers/sys/un.h
dns/headers/utmp.h
dns/inet/inet_addr.c
dns/inet/inet_cidr_ntop.c
dns/inet/inet_cidr_pton.c
dns/inet/inet_data.c
dns/inet/inet_lnaof.c
dns/inet/inet_makeaddr.c
dns/inet/inet_net_ntop.c
dns/inet/inet_net_pton.c
dns/inet/inet_neta.c
dns/inet/inet_netof.c
dns/inet/inet_network.c
dns/inet/inet_ntoa.c
dns/inet/inet_ntop.c
dns/inet/inet_pton.c
dns/inet/nsap_addr.c
dns/irs/dns.c
dns/irs/dns_ho.c
dns/irs/dns_nw.c
dns/irs/dns_p.h
dns/irs/dns_pr.c
dns/irs/dns_sv.c
dns/irs/gai_strerror.c
dns/irs/gen.c
dns/irs/gen_ho.c
dns/irs/gen_ng.c
dns/irs/gen_nw.c
dns/irs/gen_p.h
dns/irs/gen_pr.c
dns/irs/gen_sv.c
dns/irs/getaddrinfo.c
dns/irs/gethostent.c
dns/irs/gethostent_r.c
dns/irs/getnameinfo.c
dns/irs/getnetent.c
dns/irs/getnetent_r.c
dns/irs/getnetgrent.c
dns/irs/getnetgrent_r.c
dns/irs/getprotoent.c
dns/irs/getprotoent_r.c
dns/irs/getservent.c
dns/irs/getservent_r.c
dns/irs/hesiod.c
dns/irs/hesiod_p.h
dns/irs/irp.c
dns/irs/irp_ho.c
dns/irs/irp_ng.c
dns/irs/irp_nw.c
dns/irs/irp_p.h
dns/irs/irp_pr.c
dns/irs/irp_sv.c
dns/irs/irpmarshall.c
dns/irs/irs_data.c
dns/irs/irs_data.h
dns/irs/irs_p.h
dns/irs/lcl.c
dns/irs/lcl_ho.c
dns/irs/lcl_ng.c
dns/irs/lcl_nw.c
dns/irs/lcl_p.h
dns/irs/lcl_pr.c
dns/irs/lcl_sv.c
dns/irs/nis.c
dns/irs/nis_p.h
dns/irs/nul_ng.c
dns/irs/pathnames.h
dns/irs/util.c
dns/isc/assertions.c
dns/isc/base64.c
dns/isc/bitncmp.c
dns/isc/ctl_clnt.c
dns/isc/ctl_p.c
dns/isc/ctl_p.h
dns/isc/ctl_srvr.c
dns/isc/ev_connects.c
dns/isc/ev_files.c
dns/isc/ev_streams.c
dns/isc/ev_timers.c
dns/isc/ev_waits.c
dns/isc/eventlib.c
dns/isc/eventlib_p.h
dns/isc/heap.c
dns/isc/hex.c
dns/isc/logging.c
dns/isc/logging_p.h
dns/isc/memcluster.c
dns/isc/movefile.c
dns/isc/tree.c
dns/nameser/ns_date.c
dns/nameser/ns_name.c
dns/nameser/ns_netint.c
dns/nameser/ns_parse.c
dns/nameser/ns_print.c
dns/nameser/ns_samedomain.c
dns/nameser/ns_sign.c
dns/nameser/ns_ttl.c
dns/nameser/ns_verify.c
dns/port_after.h
dns/port_before.h
dns/resolv/herror.c
dns/resolv/res_comp.c
dns/resolv/res_data.c
dns/resolv/res_debug.c
dns/resolv/res_debug.h
dns/resolv/res_findzonecut.c
dns/resolv/res_init.c
dns/resolv/res_mkquery.c
dns/resolv/res_mkupdate.c
dns/resolv/res_mkupdate.h
dns/resolv/res_private.h
dns/resolv/res_query.c
dns/resolv/res_send.c
dns/resolv/res_sendsigned.c
dns/resolv/res_update.c
dns/src/TLSInit.cpp
dns/src/ethers.c
dns/src/gettimeofday.c
dns/src/linkaddr.c
dns/src/res_resultcodes.c
dns/src/strsep.c
interfaces.cpp
libnetwork/Jamfile
libnetwork/dns/src/arc4random.c
libnetwork/socket/DEVNOTES
libnetwork/socket/Jamfile
libnetwork/socket/socket.c
old/Jamfile
old/README.html
old/compat/Jamfile
old/compat/libbind/DEVNOTES
old/compat/libbind/Jamfile
old/compat/libbind/config.h
old/compat/libbind/headers/fd_setsize.h
old/compat/libbind/headers/irp.h
old/compat/libbind/headers/irs.h
old/compat/libbind/headers/isc/assertions.h
old/compat/libbind/headers/isc/ctl.h
old/compat/libbind/headers/isc/dst.h
old/compat/libbind/headers/isc/eventlib.h
old/compat/libbind/headers/isc/heap.h
old/compat/libbind/headers/isc/irpmarshall.h
old/compat/libbind/headers/isc/list.h
old/compat/libbind/headers/isc/logging.h
old/compat/libbind/headers/isc/memcluster.h
old/compat/libbind/headers/isc/misc.h
old/compat/libbind/headers/isc/tree.h
old/compat/libbind/headers/res_update.h
old/compat/libbind/headers/sys/un.h
old/compat/libbind/headers/utmp.h
old/compat/libbind/port_after.h
old/compat/libbind/port_before.h
old/compat/libnet/Jamfile
old/compat/libnet/arc4random.c
old/compat/libnet/base64.c
old/compat/libnet/compat.c
old/compat/libnet/ethers.c
old/compat/libnet/freeaddrinfo.c
old/compat/libnet/getaddrinfo.c
old/compat/libnet/gethostnamadr.c
old/compat/libnet/getnameinfo.c
old/compat/libnet/getnetbyaddr.c
old/compat/libnet/getnetbyname.c
old/compat/libnet/getnetent.c
old/compat/libnet/getnetnamadr.c
old/compat/libnet/getproto.c
old/compat/libnet/getprotoent.c
old/compat/libnet/getprotoname.c
old/compat/libnet/getservbyname.c
old/compat/libnet/getservbyport.c
old/compat/libnet/getservent.c
old/compat/libnet/headers/arpa/inet.h
old/compat/libnet/headers/arpa/nameser.h
old/compat/libnet/headers/netdb.h
old/compat/libnet/headers/resolv.h
old/compat/libnet/inet_addr.c
old/compat/libnet/inet_lnaof.c
old/compat/libnet/inet_neta.c
old/compat/libnet/inet_netof.c
old/compat/libnet/inet_network.c
old/compat/libnet/inet_ntoa.c
old/compat/libnet/inet_ntop.c
old/compat/libnet/inet_pton.c
old/compat/libnet/linkaddr.c
old/compat/libnet/netconfig.c
old/compat/libnet/netdebug.c
old/compat/libnet/networks
old/compat/libnet/poll.c
old/compat/libnet/protocols
old/compat/libnet/res_comp.c
old/compat/libnet/res_data.c
old/compat/libnet/res_debug.c
old/compat/libnet/res_init.c
old/compat/libnet/res_mkquery.c
old/compat/libnet/res_query.c
old/compat/libnet/res_random.c
old/compat/libnet/res_send.c
old/compat/libnet/resolv.conf
old/compat/libnet/select.c
old/compat/libnet/services
old/compat/libnet/sethostent.c
old/compat/libnet/socket.c
old/compat/libnetapi/Jamfile
old/compat/libnetapi/NetAddress.cpp
old/compat/libnetapi/NetBuffer.cpp
old/compat/libnetapi/NetDebug.cpp
old/compat/libnetapi/NetEndpoint.cpp
old/compat/libsocket/Jamfile
old/compat/libsocket/socket.c
old/install.sh
socket.cpp
f425cb84 25-Jun-2006 Jérôme Duval <korli@users.berlios.de>

fix the build, sorry for the long delay


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17922 a95241bf-73f2-0310-859d-f6bbb57e9c96

4e0eae18 22-Jun-2006 Jérôme Duval <korli@users.berlios.de>

patch from Olivier Coursiere for better error output in ping
change the size parameter type of several functions in sys/socket.h to match POSIX
compat libs and legacy headers keep the original R5 type (though I make a change for this)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17911 a95241bf-73f2-0310-859d-f6bbb57e9c96

5f09b6a3 05-Jun-2006 Jérôme Duval <korli@users.berlios.de>

added an empty impl for _netstat
should fix bug #654


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17724 a95241bf-73f2-0310-859d-f6bbb57e9c96

e6ae8c76 04-Jun-2006 Oliver Tappe <zooey@hirschkaefer.de>

- removed debugging printf()


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17721 a95241bf-73f2-0310-859d-f6bbb57e9c96

b0623e48 02-Jun-2006 Oliver Tappe <zooey@hirschkaefer.de>

- created a new pseudotarget 'install-userland-networking' that installs all
userland-networking files into a convenient place for easier testing:
+ net_server_driver and net_stack_driver are installed to
/boot/home/config/add-ons/kernel/drivers/bin and ../dev/net
+ net_stack_tester, ifconfig, arp and route are installed to
$(HAIKU_TEST_DIR)/kits/net/userland
+ libsocket, libnet, libbind and libnetapi are installed to
$(HAIKU_TEST_DIR)/kits/net/userland/lib
+ userland add-ons are installed to
$(HAIKU_TEST_DIR)/kits/net/userland/add-ons/obos_network


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17701 a95241bf-73f2-0310-859d-f6bbb57e9c96

470dbda0 20-Dec-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Last libnetwork.so commit. Added DEVNOTES to socket interface. libnetwork.so now compiles fine and the source is shared with libbind.so.

NEXT: port the FreeBSD netstack
I need volunteers for this huge task. And I don't have much time left for coding, anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15608 a95241bf-73f2-0310-859d-f6bbb57e9c96

45b03b39 20-Dec-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Also deleted TLSInit.cpp.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15607 a95241bf-73f2-0310-859d-f6bbb57e9c96

5af343b5 20-Dec-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Removed unneeded sources.

Just noticed that VI did not like my copy-pasted commit log. It should be: we _need_ better pthread/mutex support. Here is the important part, again:
Cleaned up native part of libbind.so a little bit more. Though, the ugly hack remains. We need better pthread/mutex support. Added TODO that we also should move sysctl() into the kernel and libroot.so.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15606 a95241bf-73f2-0310-859d-f6bbb57e9c96

ce823541 20-Dec-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Removed #ifdef __cplusplus from networking headers. The check is already done in cdefs.h (__BEGIN_DECLS) which I committed yesterday.

Committed libnetwork.so. I actually wanted to port BSD's libc/net resolver, but that one uses too many unsupported functions, so I basically merged libbind.so and libsocket.so into one library.

Moved the libbind.so sources to libnetwork/dns.

Cleaned up native part of libbind.so a little bit more. Though, the ugly hack remains. We nbetter pthread/mutex support. Added TODO that we also shousctl() into the kernel and libroot.so.

Improved DEVNOTES a little bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15605 a95241bf-73f2-0310-859d-f6bbb57e9c96


Jamfile
compat/libbind/DEVNOTES
compat/libbind/dst/dst_api.c
compat/libbind/dst/dst_internal.h
compat/libbind/dst/hmac_link.c
compat/libbind/dst/md5.h
compat/libbind/dst/md5_dgst.c
compat/libbind/dst/md5_locl.h
compat/libbind/dst/support.c
compat/libbind/inet/inet_addr.c
compat/libbind/inet/inet_cidr_ntop.c
compat/libbind/inet/inet_cidr_pton.c
compat/libbind/inet/inet_data.c
compat/libbind/inet/inet_lnaof.c
compat/libbind/inet/inet_makeaddr.c
compat/libbind/inet/inet_net_ntop.c
compat/libbind/inet/inet_net_pton.c
compat/libbind/inet/inet_neta.c
compat/libbind/inet/inet_netof.c
compat/libbind/inet/inet_network.c
compat/libbind/inet/inet_ntoa.c
compat/libbind/inet/inet_ntop.c
compat/libbind/inet/inet_pton.c
compat/libbind/inet/nsap_addr.c
compat/libbind/irs/dns.c
compat/libbind/irs/dns_ho.c
compat/libbind/irs/dns_nw.c
compat/libbind/irs/dns_p.h
compat/libbind/irs/dns_pr.c
compat/libbind/irs/dns_sv.c
compat/libbind/irs/gai_strerror.c
compat/libbind/irs/gen.c
compat/libbind/irs/gen_ho.c
compat/libbind/irs/gen_ng.c
compat/libbind/irs/gen_nw.c
compat/libbind/irs/gen_p.h
compat/libbind/irs/gen_pr.c
compat/libbind/irs/gen_sv.c
compat/libbind/irs/getaddrinfo.c
compat/libbind/irs/gethostent.c
compat/libbind/irs/gethostent_r.c
compat/libbind/irs/getnameinfo.c
compat/libbind/irs/getnetent.c
compat/libbind/irs/getnetent_r.c
compat/libbind/irs/getnetgrent.c
compat/libbind/irs/getnetgrent_r.c
compat/libbind/irs/getprotoent.c
compat/libbind/irs/getprotoent_r.c
compat/libbind/irs/getservent.c
compat/libbind/irs/getservent_r.c
compat/libbind/irs/hesiod.c
compat/libbind/irs/hesiod_p.h
compat/libbind/irs/irp.c
compat/libbind/irs/irp_ho.c
compat/libbind/irs/irp_ng.c
compat/libbind/irs/irp_nw.c
compat/libbind/irs/irp_p.h
compat/libbind/irs/irp_pr.c
compat/libbind/irs/irp_sv.c
compat/libbind/irs/irpmarshall.c
compat/libbind/irs/irs_data.c
compat/libbind/irs/irs_data.h
compat/libbind/irs/irs_p.h
compat/libbind/irs/lcl.c
compat/libbind/irs/lcl_ho.c
compat/libbind/irs/lcl_ng.c
compat/libbind/irs/lcl_nw.c
compat/libbind/irs/lcl_p.h
compat/libbind/irs/lcl_pr.c
compat/libbind/irs/lcl_sv.c
compat/libbind/irs/nis.c
compat/libbind/irs/nis_p.h
compat/libbind/irs/nul_ng.c
compat/libbind/irs/pathnames.h
compat/libbind/irs/util.c
compat/libbind/isc/assertions.c
compat/libbind/isc/base64.c
compat/libbind/isc/bitncmp.c
compat/libbind/isc/ctl_clnt.c
compat/libbind/isc/ctl_p.c
compat/libbind/isc/ctl_p.h
compat/libbind/isc/ctl_srvr.c
compat/libbind/isc/ev_connects.c
compat/libbind/isc/ev_files.c
compat/libbind/isc/ev_streams.c
compat/libbind/isc/ev_timers.c
compat/libbind/isc/ev_waits.c
compat/libbind/isc/eventlib.c
compat/libbind/isc/eventlib_p.h
compat/libbind/isc/heap.c
compat/libbind/isc/hex.c
compat/libbind/isc/logging.c
compat/libbind/isc/logging_p.h
compat/libbind/isc/memcluster.c
compat/libbind/isc/movefile.c
compat/libbind/isc/tree.c
compat/libbind/nameser/ns_date.c
compat/libbind/nameser/ns_name.c
compat/libbind/nameser/ns_netint.c
compat/libbind/nameser/ns_parse.c
compat/libbind/nameser/ns_print.c
compat/libbind/nameser/ns_samedomain.c
compat/libbind/nameser/ns_sign.c
compat/libbind/nameser/ns_ttl.c
compat/libbind/nameser/ns_verify.c
compat/libbind/resolv/herror.c
compat/libbind/resolv/res_comp.c
compat/libbind/resolv/res_data.c
compat/libbind/resolv/res_debug.c
compat/libbind/resolv/res_debug.h
compat/libbind/resolv/res_findzonecut.c
compat/libbind/resolv/res_init.c
compat/libbind/resolv/res_mkquery.c
compat/libbind/resolv/res_mkupdate.c
compat/libbind/resolv/res_mkupdate.h
compat/libbind/resolv/res_private.h
compat/libbind/resolv/res_query.c
compat/libbind/resolv/res_send.c
compat/libbind/resolv/res_sendsigned.c
compat/libbind/resolv/res_update.c
libnetwork/dns/DEVNOTES
libnetwork/dns/Jamfile
libnetwork/socket/Jamfile
5d7cf21b 20-Dec-2005 Waldemar Kornewald <wkornew@nowhere.fake>

More preparations for libnetwork.so. SVN does not let me commit everything at once.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15604 a95241bf-73f2-0310-859d-f6bbb57e9c96


libnetwork/Jamfile
libnetwork/dns/DEVNOTES
libnetwork/dns/Jamfile
libnetwork/dns/config.h
libnetwork/dns/dst/dst_api.c
libnetwork/dns/dst/dst_internal.h
libnetwork/dns/dst/hmac_link.c
libnetwork/dns/dst/md5.h
libnetwork/dns/dst/md5_dgst.c
libnetwork/dns/dst/md5_locl.h
libnetwork/dns/dst/support.c
libnetwork/dns/headers/fd_setsize.h
libnetwork/dns/headers/irp.h
libnetwork/dns/headers/irs.h
libnetwork/dns/headers/isc/assertions.h
libnetwork/dns/headers/isc/ctl.h
libnetwork/dns/headers/isc/dst.h
libnetwork/dns/headers/isc/eventlib.h
libnetwork/dns/headers/isc/heap.h
libnetwork/dns/headers/isc/irpmarshall.h
libnetwork/dns/headers/isc/list.h
libnetwork/dns/headers/isc/logging.h
libnetwork/dns/headers/isc/memcluster.h
libnetwork/dns/headers/isc/misc.h
libnetwork/dns/headers/isc/tree.h
libnetwork/dns/headers/pthread_emu.h
libnetwork/dns/headers/res_update.h
libnetwork/dns/headers/sys/un.h
libnetwork/dns/headers/utmp.h
libnetwork/dns/inet/inet_addr.c
libnetwork/dns/inet/inet_cidr_ntop.c
libnetwork/dns/inet/inet_cidr_pton.c
libnetwork/dns/inet/inet_data.c
libnetwork/dns/inet/inet_lnaof.c
libnetwork/dns/inet/inet_makeaddr.c
libnetwork/dns/inet/inet_net_ntop.c
libnetwork/dns/inet/inet_net_pton.c
libnetwork/dns/inet/inet_neta.c
libnetwork/dns/inet/inet_netof.c
libnetwork/dns/inet/inet_network.c
libnetwork/dns/inet/inet_ntoa.c
libnetwork/dns/inet/inet_ntop.c
libnetwork/dns/inet/inet_pton.c
libnetwork/dns/inet/nsap_addr.c
libnetwork/dns/irs/dns.c
libnetwork/dns/irs/dns_ho.c
libnetwork/dns/irs/dns_nw.c
libnetwork/dns/irs/dns_p.h
libnetwork/dns/irs/dns_pr.c
libnetwork/dns/irs/dns_sv.c
libnetwork/dns/irs/gai_strerror.c
libnetwork/dns/irs/gen.c
libnetwork/dns/irs/gen_ho.c
libnetwork/dns/irs/gen_ng.c
libnetwork/dns/irs/gen_nw.c
libnetwork/dns/irs/gen_p.h
libnetwork/dns/irs/gen_pr.c
libnetwork/dns/irs/gen_sv.c
libnetwork/dns/irs/getaddrinfo.c
libnetwork/dns/irs/gethostent.c
libnetwork/dns/irs/gethostent_r.c
libnetwork/dns/irs/getnameinfo.c
libnetwork/dns/irs/getnetent.c
libnetwork/dns/irs/getnetent_r.c
libnetwork/dns/irs/getnetgrent.c
libnetwork/dns/irs/getnetgrent_r.c
libnetwork/dns/irs/getprotoent.c
libnetwork/dns/irs/getprotoent_r.c
libnetwork/dns/irs/getservent.c
libnetwork/dns/irs/getservent_r.c
libnetwork/dns/irs/hesiod.c
libnetwork/dns/irs/hesiod_p.h
libnetwork/dns/irs/irp.c
libnetwork/dns/irs/irp_ho.c
libnetwork/dns/irs/irp_ng.c
libnetwork/dns/irs/irp_nw.c
libnetwork/dns/irs/irp_p.h
libnetwork/dns/irs/irp_pr.c
libnetwork/dns/irs/irp_sv.c
libnetwork/dns/irs/irpmarshall.c
libnetwork/dns/irs/irs_data.c
libnetwork/dns/irs/irs_data.h
libnetwork/dns/irs/irs_p.h
libnetwork/dns/irs/lcl.c
libnetwork/dns/irs/lcl_ho.c
libnetwork/dns/irs/lcl_ng.c
libnetwork/dns/irs/lcl_nw.c
libnetwork/dns/irs/lcl_p.h
libnetwork/dns/irs/lcl_pr.c
libnetwork/dns/irs/lcl_sv.c
libnetwork/dns/irs/nis.c
libnetwork/dns/irs/nis_p.h
libnetwork/dns/irs/nul_ng.c
libnetwork/dns/irs/pathnames.h
libnetwork/dns/irs/util.c
libnetwork/dns/isc/assertions.c
libnetwork/dns/isc/base64.c
libnetwork/dns/isc/bitncmp.c
libnetwork/dns/isc/ctl_clnt.c
libnetwork/dns/isc/ctl_p.c
libnetwork/dns/isc/ctl_p.h
libnetwork/dns/isc/ctl_srvr.c
libnetwork/dns/isc/ev_connects.c
libnetwork/dns/isc/ev_files.c
libnetwork/dns/isc/ev_streams.c
libnetwork/dns/isc/ev_timers.c
libnetwork/dns/isc/ev_waits.c
libnetwork/dns/isc/eventlib.c
libnetwork/dns/isc/eventlib_p.h
libnetwork/dns/isc/heap.c
libnetwork/dns/isc/hex.c
libnetwork/dns/isc/logging.c
libnetwork/dns/isc/logging_p.h
libnetwork/dns/isc/memcluster.c
libnetwork/dns/isc/movefile.c
libnetwork/dns/isc/tree.c
libnetwork/dns/nameser/ns_date.c
libnetwork/dns/nameser/ns_name.c
libnetwork/dns/nameser/ns_netint.c
libnetwork/dns/nameser/ns_parse.c
libnetwork/dns/nameser/ns_print.c
libnetwork/dns/nameser/ns_samedomain.c
libnetwork/dns/nameser/ns_sign.c
libnetwork/dns/nameser/ns_ttl.c
libnetwork/dns/nameser/ns_verify.c
libnetwork/dns/port_after.h
libnetwork/dns/port_before.h
libnetwork/dns/resolv/herror.c
libnetwork/dns/resolv/res_comp.c
libnetwork/dns/resolv/res_data.c
libnetwork/dns/resolv/res_debug.c
libnetwork/dns/resolv/res_debug.h
libnetwork/dns/resolv/res_findzonecut.c
libnetwork/dns/resolv/res_init.c
libnetwork/dns/resolv/res_mkquery.c
libnetwork/dns/resolv/res_mkupdate.c
libnetwork/dns/resolv/res_mkupdate.h
libnetwork/dns/resolv/res_private.h
libnetwork/dns/resolv/res_query.c
libnetwork/dns/resolv/res_send.c
libnetwork/dns/resolv/res_sendsigned.c
libnetwork/dns/resolv/res_update.c
libnetwork/dns/src/TLSInit.cpp
libnetwork/dns/src/arc4random.c
libnetwork/dns/src/ethers.c
libnetwork/dns/src/gettimeofday.c
libnetwork/dns/src/linkaddr.c
libnetwork/dns/src/res_resultcodes.c
libnetwork/dns/src/strsep.c
libnetwork/socket/Jamfile
libnetwork/socket/socket.c
ffcb4cfc 20-Dec-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Preparations for libnetwork.so commit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15603 a95241bf-73f2-0310-859d-f6bbb57e9c96

f7a223fa 19-Dec-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Removed unneeded libbind files (were never compiled, anyway).

Moved some headers around and cleaned them up.

Fixed threading code in libbind.so. Don't know why I hadn't noticed this before. Now it is reliable, but uses an even uglier hack.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15585 a95241bf-73f2-0310-859d-f6bbb57e9c96

5352d6ba 17-Dec-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Updated DEVNOTES. It's finally complete, now.

Fixed headers:
- added checks for C++
- removed _REENTRANT checks


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15572 a95241bf-73f2-0310-859d-f6bbb57e9c96

c544064d 16-Dec-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Updated BIND resolver library (libbind.so) to version 9.3.1.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15570 a95241bf-73f2-0310-859d-f6bbb57e9c96


compat/libbind/DEVNOTES
compat/libbind/Jamfile
compat/libbind/config.h
compat/libbind/dst/dst_api.c
compat/libbind/dst/dst_internal.h
compat/libbind/dst/hmac_link.c
compat/libbind/dst/md5_dgst.c
compat/libbind/dst/md5_locl.h
compat/libbind/dst/support.c
compat/libbind/inet/inet_addr.c
compat/libbind/inet/inet_cidr_ntop.c
compat/libbind/inet/inet_cidr_pton.c
compat/libbind/inet/inet_data.c
compat/libbind/inet/inet_makeaddr.c
compat/libbind/inet/inet_net_ntop.c
compat/libbind/inet/inet_net_pton.c
compat/libbind/inet/inet_neta.c
compat/libbind/inet/inet_network.c
compat/libbind/inet/inet_ntop.c
compat/libbind/inet/inet_pton.c
compat/libbind/inet/nsap_addr.c
compat/libbind/irs/dns.c
compat/libbind/irs/dns_gr.c
compat/libbind/irs/dns_ho.c
compat/libbind/irs/dns_nw.c
compat/libbind/irs/dns_p.h
compat/libbind/irs/dns_pr.c
compat/libbind/irs/dns_pw.c
compat/libbind/irs/dns_sv.c
compat/libbind/irs/gai_strerror.c
compat/libbind/irs/gen.c
compat/libbind/irs/gen_gr.c
compat/libbind/irs/gen_ho.c
compat/libbind/irs/gen_ng.c
compat/libbind/irs/gen_nw.c
compat/libbind/irs/gen_p.h
compat/libbind/irs/gen_pr.c
compat/libbind/irs/gen_pw.c
compat/libbind/irs/gen_sv.c
compat/libbind/irs/getaddrinfo.c
compat/libbind/irs/getgrent.c
compat/libbind/irs/getgrent_r.c
compat/libbind/irs/gethostent.c
compat/libbind/irs/gethostent_r.c
compat/libbind/irs/getnameinfo.c
compat/libbind/irs/getnetent.c
compat/libbind/irs/getnetent_r.c
compat/libbind/irs/getnetgrent.c
compat/libbind/irs/getnetgrent_r.c
compat/libbind/irs/getprotoent.c
compat/libbind/irs/getprotoent_r.c
compat/libbind/irs/getpwent.c
compat/libbind/irs/getpwent_r.c
compat/libbind/irs/getservent.c
compat/libbind/irs/getservent_r.c
compat/libbind/irs/hesiod.c
compat/libbind/irs/hesiod_p.h
compat/libbind/irs/irp.c
compat/libbind/irs/irp_gr.c
compat/libbind/irs/irp_ho.c
compat/libbind/irs/irp_ng.c
compat/libbind/irs/irp_nw.c
compat/libbind/irs/irp_p.h
compat/libbind/irs/irp_pr.c
compat/libbind/irs/irp_pw.c
compat/libbind/irs/irp_sv.c
compat/libbind/irs/irpmarshall.c
compat/libbind/irs/irs_data.c
compat/libbind/irs/irs_data.h
compat/libbind/irs/irs_p.h
compat/libbind/irs/lcl.c
compat/libbind/irs/lcl_gr.c
compat/libbind/irs/lcl_ho.c
compat/libbind/irs/lcl_ng.c
compat/libbind/irs/lcl_nw.c
compat/libbind/irs/lcl_p.h
compat/libbind/irs/lcl_pr.c
compat/libbind/irs/lcl_pw.c
compat/libbind/irs/lcl_sv.c
compat/libbind/irs/nis.c
compat/libbind/irs/nis_gr.c
compat/libbind/irs/nis_ho.c
compat/libbind/irs/nis_ng.c
compat/libbind/irs/nis_nw.c
compat/libbind/irs/nis_p.h
compat/libbind/irs/nis_pr.c
compat/libbind/irs/nis_pw.c
compat/libbind/irs/nis_sv.c
compat/libbind/irs/nul_ng.c
compat/libbind/irs/pathnames.h
compat/libbind/irs/util.c
compat/libbind/isc/assertions.c
compat/libbind/isc/base64.c
compat/libbind/isc/bitncmp.c
compat/libbind/isc/ctl_clnt.c
compat/libbind/isc/ctl_p.c
compat/libbind/isc/ctl_srvr.c
compat/libbind/isc/ev_connects.c
compat/libbind/isc/ev_files.c
compat/libbind/isc/ev_streams.c
compat/libbind/isc/ev_timers.c
compat/libbind/isc/ev_waits.c
compat/libbind/isc/eventlib.c
compat/libbind/isc/eventlib_p.h
compat/libbind/isc/heap.c
compat/libbind/isc/hex.c
compat/libbind/isc/logging.c
compat/libbind/isc/logging_p.h
compat/libbind/isc/memcluster.c
compat/libbind/isc/movefile.c
compat/libbind/isc/tree.c
compat/libbind/nameser/ns_date.c
compat/libbind/nameser/ns_name.c
compat/libbind/nameser/ns_netint.c
compat/libbind/nameser/ns_parse.c
compat/libbind/nameser/ns_print.c
compat/libbind/nameser/ns_samedomain.c
compat/libbind/nameser/ns_sign.c
compat/libbind/nameser/ns_ttl.c
compat/libbind/nameser/ns_verify.c
compat/libbind/port_after.h
compat/libbind/port_before.h
compat/libbind/resolv/herror.c
compat/libbind/resolv/res_comp.c
compat/libbind/resolv/res_data.c
compat/libbind/resolv/res_debug.c
compat/libbind/resolv/res_debug.h
compat/libbind/resolv/res_findzonecut.c
compat/libbind/resolv/res_init.c
compat/libbind/resolv/res_mkquery.c
compat/libbind/resolv/res_mkupdate.c
compat/libbind/resolv/res_mkupdate.h
compat/libbind/resolv/res_query.c
compat/libbind/resolv/res_send.c
compat/libbind/resolv/res_sendsigned.c
compat/libbind/resolv/res_update.c
compat/libbind/src/gettimeofday.c
compat/libbind/src/strsep.c
57eab440 13-Dec-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Now we use the legacy headers when building our compatibility libraries. Fixed BuildSetup to use root instead of libroot.so because arp would not build otherwise. Command-line apps now don't build for R5, anymore. I hope nothing is broken.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15527 a95241bf-73f2-0310-859d-f6bbb57e9c96

9ad01d8d 03-Dec-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Added the merged objects to LinkAgainst.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15307 a95241bf-73f2-0310-859d-f6bbb57e9c96

f6ba01da 27-Nov-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Fixed ld reporting too many arguments.

Question about libbind: Why do I have to specify libroot.so in LinkAgainst? And does SharedLibrary not set the dependencies? I had to add Depends libbind.so : ... ;. Ingo, anyone?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15192 a95241bf-73f2-0310-859d-f6bbb57e9c96

eb944888 26-Nov-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed image build broken since revision 15169.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15179 a95241bf-73f2-0310-859d-f6bbb57e9c96

67b376e9 26-Nov-2005 Waldemar Kornewald <wkornew@nowhere.fake>

Moved our networking libraries to src/kits/network/compat. We want to have our own, clean libnetwork.so.

TODO: move all public networking headers to some other place (compat or headers/legacy?) and replace the current headers with clean versions from FreeBSD and BIND 9.3.1
TODO: remove R5 target support


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15169 a95241bf-73f2-0310-859d-f6bbb57e9c96


Jamfile
compat/libbind/DEVNOTES
compat/libbind/Jamfile
compat/libbind/config.h
compat/libbind/dst/dst_api.c
compat/libbind/dst/dst_internal.h
compat/libbind/dst/hmac_link.c
compat/libbind/dst/md5.h
compat/libbind/dst/md5_dgst.c
compat/libbind/dst/md5_locl.h
compat/libbind/dst/support.c
compat/libbind/headers/pthread_emu.h
compat/libbind/headers/sys/un.h
compat/libbind/headers/utmp.h
compat/libbind/inet/inet_addr.c
compat/libbind/inet/inet_cidr_ntop.c
compat/libbind/inet/inet_cidr_pton.c
compat/libbind/inet/inet_data.c
compat/libbind/inet/inet_lnaof.c
compat/libbind/inet/inet_makeaddr.c
compat/libbind/inet/inet_net_ntop.c
compat/libbind/inet/inet_net_pton.c
compat/libbind/inet/inet_neta.c
compat/libbind/inet/inet_netof.c
compat/libbind/inet/inet_network.c
compat/libbind/inet/inet_ntoa.c
compat/libbind/inet/inet_ntop.c
compat/libbind/inet/inet_pton.c
compat/libbind/inet/nsap_addr.c
compat/libbind/irs/dns.c
compat/libbind/irs/dns_gr.c
compat/libbind/irs/dns_ho.c
compat/libbind/irs/dns_nw.c
compat/libbind/irs/dns_p.h
compat/libbind/irs/dns_pr.c
compat/libbind/irs/dns_pw.c
compat/libbind/irs/dns_sv.c
compat/libbind/irs/gai_strerror.c
compat/libbind/irs/gen.c
compat/libbind/irs/gen_gr.c
compat/libbind/irs/gen_ho.c
compat/libbind/irs/gen_ng.c
compat/libbind/irs/gen_nw.c
compat/libbind/irs/gen_p.h
compat/libbind/irs/gen_pr.c
compat/libbind/irs/gen_pw.c
compat/libbind/irs/gen_sv.c
compat/libbind/irs/getaddrinfo.c
compat/libbind/irs/getgrent.c
compat/libbind/irs/getgrent_r.c
compat/libbind/irs/gethostent.c
compat/libbind/irs/gethostent_r.c
compat/libbind/irs/getnameinfo.c
compat/libbind/irs/getnetent.c
compat/libbind/irs/getnetent_r.c
compat/libbind/irs/getnetgrent.c
compat/libbind/irs/getnetgrent_r.c
compat/libbind/irs/getprotoent.c
compat/libbind/irs/getprotoent_r.c
compat/libbind/irs/getpwent.c
compat/libbind/irs/getpwent_r.c
compat/libbind/irs/getservent.c
compat/libbind/irs/getservent_r.c
compat/libbind/irs/hesiod.c
compat/libbind/irs/hesiod_p.h
compat/libbind/irs/irp.c
compat/libbind/irs/irp_gr.c
compat/libbind/irs/irp_ho.c
compat/libbind/irs/irp_ng.c
compat/libbind/irs/irp_nw.c
compat/libbind/irs/irp_p.h
compat/libbind/irs/irp_pr.c
compat/libbind/irs/irp_pw.c
compat/libbind/irs/irp_sv.c
compat/libbind/irs/irpmarshall.c
compat/libbind/irs/irs_data.c
compat/libbind/irs/irs_data.h
compat/libbind/irs/irs_p.h
compat/libbind/irs/lcl.c
compat/libbind/irs/lcl_gr.c
compat/libbind/irs/lcl_ho.c
compat/libbind/irs/lcl_ng.c
compat/libbind/irs/lcl_nw.c
compat/libbind/irs/lcl_p.h
compat/libbind/irs/lcl_pr.c
compat/libbind/irs/lcl_pw.c
compat/libbind/irs/lcl_sv.c
compat/libbind/irs/nis.c
compat/libbind/irs/nis_gr.c
compat/libbind/irs/nis_ho.c
compat/libbind/irs/nis_ng.c
compat/libbind/irs/nis_nw.c
compat/libbind/irs/nis_p.h
compat/libbind/irs/nis_pr.c
compat/libbind/irs/nis_pw.c
compat/libbind/irs/nis_sv.c
compat/libbind/irs/nul_ng.c
compat/libbind/irs/pathnames.h
compat/libbind/irs/util.c
compat/libbind/isc/assertions.c
compat/libbind/isc/base64.c
compat/libbind/isc/bitncmp.c
compat/libbind/isc/ctl_clnt.c
compat/libbind/isc/ctl_p.c
compat/libbind/isc/ctl_p.h
compat/libbind/isc/ctl_srvr.c
compat/libbind/isc/ev_connects.c
compat/libbind/isc/ev_files.c
compat/libbind/isc/ev_streams.c
compat/libbind/isc/ev_timers.c
compat/libbind/isc/ev_waits.c
compat/libbind/isc/eventlib.c
compat/libbind/isc/eventlib_p.h
compat/libbind/isc/heap.c
compat/libbind/isc/hex.c
compat/libbind/isc/logging.c
compat/libbind/isc/logging_p.h
compat/libbind/isc/memcluster.c
compat/libbind/isc/movefile.c
compat/libbind/isc/tree.c
compat/libbind/nameser/ns_date.c
compat/libbind/nameser/ns_name.c
compat/libbind/nameser/ns_netint.c
compat/libbind/nameser/ns_parse.c
compat/libbind/nameser/ns_print.c
compat/libbind/nameser/ns_samedomain.c
compat/libbind/nameser/ns_sign.c
compat/libbind/nameser/ns_ttl.c
compat/libbind/nameser/ns_verify.c
compat/libbind/port_after.h
compat/libbind/port_before.h
compat/libbind/resolv/herror.c
compat/libbind/resolv/res_comp.c
compat/libbind/resolv/res_data.c
compat/libbind/resolv/res_debug.c
compat/libbind/resolv/res_debug.h
compat/libbind/resolv/res_findzonecut.c
compat/libbind/resolv/res_init.c
compat/libbind/resolv/res_mkquery.c
compat/libbind/resolv/res_mkupdate.c
compat/libbind/resolv/res_mkupdate.h
compat/libbind/resolv/res_private.h
compat/libbind/resolv/res_query.c
compat/libbind/resolv/res_send.c
compat/libbind/resolv/res_sendsigned.c
compat/libbind/resolv/res_update.c
compat/libbind/src/arc4random.c
compat/libbind/src/ethers.c
compat/libbind/src/linkaddr.c
compat/libbind/src/pthread_emu.c
compat/libbind/src/res_resultcodes.c
compat/libbind/src/strsep.c
compat/libnet/Jamfile
compat/libnet/arc4random.c
compat/libnet/base64.c
compat/libnet/compat.c
compat/libnet/ethers.c
compat/libnet/freeaddrinfo.c
compat/libnet/getaddrinfo.c
compat/libnet/gethostnamadr.c
compat/libnet/getnameinfo.c
compat/libnet/getnetbyaddr.c
compat/libnet/getnetbyname.c
compat/libnet/getnetent.c
compat/libnet/getnetnamadr.c
compat/libnet/getproto.c
compat/libnet/getprotoent.c
compat/libnet/getprotoname.c
compat/libnet/getservbyname.c
compat/libnet/getservbyport.c
compat/libnet/getservent.c
compat/libnet/headers/arpa/inet.h
compat/libnet/headers/arpa/nameser.h
compat/libnet/headers/netdb.h
compat/libnet/headers/resolv.h
compat/libnet/inet_addr.c
compat/libnet/inet_lnaof.c
compat/libnet/inet_neta.c
compat/libnet/inet_netof.c
compat/libnet/inet_network.c
compat/libnet/inet_ntoa.c
compat/libnet/inet_ntop.c
compat/libnet/inet_pton.c
compat/libnet/linkaddr.c
compat/libnet/netconfig.c
compat/libnet/netdebug.c
compat/libnet/networks
compat/libnet/poll.c
compat/libnet/protocols
compat/libnet/res_comp.c
compat/libnet/res_data.c
compat/libnet/res_debug.c
compat/libnet/res_init.c
compat/libnet/res_mkquery.c
compat/libnet/res_query.c
compat/libnet/res_random.c
compat/libnet/res_send.c
compat/libnet/resolv.conf
compat/libnet/select.c
compat/libnet/services
compat/libnet/sethostent.c
compat/libnet/socket.c
compat/libnetapi/Jamfile
compat/libnetapi/NetAddress.cpp
compat/libnetapi/NetBuffer.cpp
compat/libnetapi/NetDebug.cpp
compat/libnetapi/NetEndpoint.cpp
compat/libsocket/Jamfile
compat/libsocket/select.c
compat/libsocket/socket.c
758b1d0e 12-Nov-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixes that make Haiku build with gcc 4. Mainly out of the following
categories:
* Missing includes (like <stdlib.h> and <string.h>).
* Linking against $(TARGET_LIBSTDC++) instead of libstdc++.r4.so.
* Local variables shadowing parameters.
* Default parameters in function definitions (as opposed to function
declarations).
* All C++ stuff (nothrow, map, set, vector, min, max,...) must be imported
explicitly from the std:: namespace now.
* "new (sometype)[...]" must read "new sometype[...]", even if sometype is
something like "const char *".
* __FUNCTION__ is no longer a string literal (but a string expression), i.e.
'printf(__FUNCTION__ ": ...\n")' is invalid code.
* A type cast results in a non-lvalue. E.g. "(char *)buffer += bytes"
is an invalid expression.
* "friend class SomeClass" only works when SomeClass is known before.
Otherwise the an inner class with that name is considered as friend.
gcc 4 is much pickier about scopes.
* gcc 4 is generally stricter with respect to type conversions in C.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14878 a95241bf-73f2-0310-859d-f6bbb57e9c96

1c24d3c1 06-Nov-2005 Jérôme Duval <korli@users.berlios.de>

addr and addrlen can be null


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14724 a95241bf-73f2-0310-859d-f6bbb57e9c96

338b8dc3 29-Oct-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Merged changes from branch build_system_redesign at revision 14573.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14574 a95241bf-73f2-0310-859d-f6bbb57e9c96


Jamfile
libbind/Jamfile
libbind/dst/dst_api.c
libbind/dst/support.c
libbind/inet/inet_addr.c
libbind/inet/inet_cidr_ntop.c
libbind/inet/inet_cidr_pton.c
libbind/inet/inet_data.c
libbind/inet/inet_net_ntop.c
libbind/inet/inet_net_pton.c
libbind/inet/inet_neta.c
libbind/inet/inet_ntoa.c
libbind/inet/inet_ntop.c
libbind/inet/inet_pton.c
libbind/inet/nsap_addr.c
libbind/irs/dns.c
libbind/irs/dns_gr.c
libbind/irs/dns_ho.c
libbind/irs/dns_nw.c
libbind/irs/dns_p.h
libbind/irs/dns_pr.c
libbind/irs/dns_pw.c
libbind/irs/dns_sv.c
libbind/irs/gen.c
libbind/irs/gen_gr.c
libbind/irs/gen_ho.c
libbind/irs/gen_ng.c
libbind/irs/gen_nw.c
libbind/irs/gen_p.h
libbind/irs/gen_pr.c
libbind/irs/gen_pw.c
libbind/irs/gen_sv.c
libbind/irs/getgrent.c
libbind/irs/getgrent_r.c
libbind/irs/gethostent.c
libbind/irs/gethostent_r.c
libbind/irs/getnetent.c
libbind/irs/getnetent_r.c
libbind/irs/getnetgrent.c
libbind/irs/getnetgrent_r.c
libbind/irs/getprotoent.c
libbind/irs/getprotoent_r.c
libbind/irs/getpwent.c
libbind/irs/getpwent_r.c
libbind/irs/getservent.c
libbind/irs/getservent_r.c
libbind/irs/hesiod.c
libbind/irs/hesiod_p.h
libbind/irs/irp.c
libbind/irs/irp_gr.c
libbind/irs/irp_ho.c
libbind/irs/irp_ng.c
libbind/irs/irp_nw.c
libbind/irs/irp_p.h
libbind/irs/irp_pr.c
libbind/irs/irp_pw.c
libbind/irs/irp_sv.c
libbind/irs/irpmarshall.c
libbind/irs/irs_data.c
libbind/irs/irs_data.h
libbind/irs/irs_p.h
libbind/irs/lcl.c
libbind/irs/lcl_gr.c
libbind/irs/lcl_ho.c
libbind/irs/lcl_ng.c
libbind/irs/lcl_nw.c
libbind/irs/lcl_p.h
libbind/irs/lcl_pr.c
libbind/irs/lcl_pw.c
libbind/irs/lcl_sv.c
libbind/irs/nis.c
libbind/irs/nis_gr.c
libbind/irs/nis_ho.c
libbind/irs/nis_ng.c
libbind/irs/nis_nw.c
libbind/irs/nis_p.h
libbind/irs/nis_pr.c
libbind/irs/nis_pw.c
libbind/irs/nis_sv.c
libbind/irs/nul_ng.c
libbind/irs/pathnames.h
libbind/irs/util.c
libbind/isc/assertions.c
libbind/isc/base64.c
libbind/isc/bitncmp.c
libbind/isc/ctl_clnt.c
libbind/isc/ctl_p.c
libbind/isc/ctl_srvr.c
libbind/isc/ev_connects.c
libbind/isc/ev_files.c
libbind/isc/ev_streams.c
libbind/isc/ev_timers.c
libbind/isc/ev_waits.c
libbind/isc/eventlib.c
libbind/isc/eventlib_p.h
libbind/isc/heap.c
libbind/isc/logging.c
libbind/isc/memcluster.c
libbind/isc/tree.c
libbind/nameser/ns_date.c
libbind/nameser/ns_name.c
libbind/nameser/ns_netint.c
libbind/nameser/ns_parse.c
libbind/nameser/ns_print.c
libbind/nameser/ns_samedomain.c
libbind/nameser/ns_sign.c
libbind/nameser/ns_ttl.c
libbind/nameser/ns_verify.c
libbind/resolv/herror.c
libbind/resolv/res_comp.c
libbind/resolv/res_data.c
libbind/resolv/res_debug.c
libbind/resolv/res_findzonecut.c
libbind/resolv/res_init.c
libbind/resolv/res_mkquery.c
libbind/resolv/res_mkupdate.c
libbind/resolv/res_query.c
libbind/resolv/res_send.c
libbind/resolv/res_update.c
libnet/Jamfile
libnetapi/Jamfile
libsocket/Jamfile
060d9206 13-Oct-2005 Jérôme Duval <korli@users.berlios.de>

added some netdebug and netconfig files


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14373 a95241bf-73f2-0310-859d-f6bbb57e9c96

e2897378 12-Oct-2005 Jérôme Duval <korli@users.berlios.de>

added some legacy functions for ftpd and telnetd


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14364 a95241bf-73f2-0310-859d-f6bbb57e9c96

83e02263 27-Sep-2005 Jérôme Duval <korli@users.berlios.de>

added a socketpair in libsocket.so with corresponding code in the network stack driver and the network stack
socketpair() in the network stack is empty and still to be implemented for real


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14267 a95241bf-73f2-0310-859d-f6bbb57e9c96

900849fa 13-Apr-2005 Axel Dörfler <axeld@pinc-software.de>

Since objects/.../system/kernel is now a directory, the kernel target is now
called kernel_${arch} like on disk. A "jam kernel" will still work, though.
Also updated all those Jamfiles I forgot to update before.
Since makehdimage now runs through (and even builds a working image), I guess
most of the consequences of the "kernel/core" -> "system/kernel" rename task
are solved.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12364 a95241bf-73f2-0310-859d-f6bbb57e9c96

8b8ddda5 11-Apr-2005 Michael Lotz <mmlr@mlotz.ch>

Added socket.c to the build again. It is of course neccessary to have it in libnet.so. The real version of socket is in libsocket.so.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12290 a95241bf-73f2-0310-859d-f6bbb57e9c96

8a43fdf8 09-Apr-2005 Axel Dörfler <axeld@pinc-software.de>

Fixed the build for target Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12282 a95241bf-73f2-0310-859d-f6bbb57e9c96

22f72496 09-Apr-2005 Michael Lotz <mmlr@mlotz.ch>

Adapt the build of the network libraries to the different target platforms. If we compile for Haiku we don't want select for example as we have it in libroot, but we need it under R5.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12275 a95241bf-73f2-0310-859d-f6bbb57e9c96

8080d000 20-Mar-2005 Andrew Bachmann <andrewbachmann@nowhere.fake>

link to libroot.so instead of root, so uname is available

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11923 a95241bf-73f2-0310-859d-f6bbb57e9c96

cc325526 11-Mar-2005 Jérôme Duval <korli@users.berlios.de>

EDESTADDRREQ is now defined


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11679 a95241bf-73f2-0310-859d-f6bbb57e9c96

365eee4a 22-Jan-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Don't include uname() when being built for Haiku. Actually the whole
file should not be included, but if simply left out, linking libnet will
fail, complaining about a missing _h_errnop().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10956 a95241bf-73f2-0310-859d-f6bbb57e9c96

4907c35b 15-Oct-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Fixed a warning.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9366 a95241bf-73f2-0310-859d-f6bbb57e9c96

1445ff4a 12-Oct-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Backup /etc/* network config files too. Update the README.html, still in needs
for more details...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9299 a95241bf-73f2-0310-859d-f6bbb57e9c96

16bf4f99 11-Oct-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Package rule was wrongly placed!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9288 a95241bf-73f2-0310-859d-f6bbb57e9c96

7dab30db 11-Oct-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Move README.html upper.
Add an install script to haiku-networkingkit-cvs package, featuring an
uninstall.zip backup creation.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9287 a95241bf-73f2-0310-859d-f6bbb57e9c96

f1d8cfb4 03-Oct-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

TODO comment commit ;-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9168 a95241bf-73f2-0310-859d-f6bbb57e9c96

982115e5 29-Sep-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Fixed a buffer overflow caused by our R5 select() emulation.
Added missing uname() function which is needed for full R5 compatibility.
It seems that nearly all apps are working now. I could finally run Vision (BONE and R5), BeShare (quick test only), lynx, Net+, etc.
Apps that don't work: Mozilla for BONE, some ssh binary that I downloaded, Be's ftp when not in passive mode.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9098 a95241bf-73f2-0310-859d-f6bbb57e9c96

d72d2ff1 31-Aug-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Rename get_stack_driver_path() into stack_driver_path() to follow BeOS naming policy
about functions directly returning the value.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8739 a95241bf-73f2-0310-859d-f6bbb57e9c96

1886cac8 30-Aug-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Include /etc files in the package. Their installation at final location is
not yet there, work in progress.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8729 a95241bf-73f2-0310-859d-f6bbb57e9c96

7ada7820 27-Aug-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

NetworkingKit package's libs where misplaced, installed into
Desktop/openbeos-networkingkit-cvs, when bin tools where, them, installed into Desktop/haiku-networkingkit-cvs !
This should not have help earlier tester(s) ;-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8675 a95241bf-73f2-0310-859d-f6bbb57e9c96

200ec026 13-Aug-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Remove const that breaks binary compatibility (const are mangled too).
Thanks axeld to point at them.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8569 a95241bf-73f2-0310-859d-f6bbb57e9c96

2c42f7bc 13-Aug-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Complete BNetEdnpoint implementation, based on Alexandre Bique contribution.
Fix sendto() and recvfrom() sockaddr length argument to int, not size_t.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8564 a95241bf-73f2-0310-859d-f6bbb57e9c96

3bf35a18 13-Aug-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Now, Dump() output hex and ascii side by side.
Renamed g_IsEnabled global into a more meaningfull name.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8554 a95241bf-73f2-0310-859d-f6bbb57e9c96

8f6af500 26-Jul-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

openbeos-networkingkit-cvs => haiku-networkingkit-cvs
Haiku'ed libnet/README.html


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8476 a95241bf-73f2-0310-859d-f6bbb57e9c96

31dca902 14-May-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

libnetapi.so is now again linked against libnet.so to be R5 binary compatible.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7584 a95241bf-73f2-0310-859d-f6bbb57e9c96

6d554064 12-May-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Was assuming sys/cdefs.h included by inet.h, which is not (anymore).
Added ISC arpa/nameser.h private header instead of sys/cdefs.h to follow others
source modules include pattern.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7545 a95241bf-73f2-0310-859d-f6bbb57e9c96

995e1b17 12-May-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

gethostname() is located in libnet.so on R5 & BONE *and* our own stack too.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7544 a95241bf-73f2-0310-859d-f6bbb57e9c96

c6ee24f7 25-Apr-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Wrong headers path order, local headers should win over private.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7313 a95241bf-73f2-0310-859d-f6bbb57e9c96

f37d5d3c 25-Apr-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Ooops, -nodefaultlibs means no libroot.so link by default!
Add it explicitly now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7312 a95241bf-73f2-0310-859d-f6bbb57e9c96

c898b9b7 25-Apr-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Should not be linked against R5's libnet.so.
Move ISC-specific headers to private/net, including non-POSIX headers
required by ISC headers...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7308 a95241bf-73f2-0310-859d-f6bbb57e9c96

4a879164 25-Apr-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Should not be liking against R5 libnet.so!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7307 a95241bf-73f2-0310-859d-f6bbb57e9c96

38737ad1 25-Apr-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Just changed the libs to link against our private libsocket.so.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7305 a95241bf-73f2-0310-859d-f6bbb57e9c96

0ddbc23a 18-Apr-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Added _res_resultcodes for improved BONE compatibility.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7230 a95241bf-73f2-0310-859d-f6bbb57e9c96

58a1abc4 17-Apr-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Added missing functions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7226 a95241bf-73f2-0310-859d-f6bbb57e9c96

a45c236c 15-Apr-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Added libbind and libsocket to the build.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7218 a95241bf-73f2-0310-859d-f6bbb57e9c96

b155eedf 15-Apr-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Checkin of BIND 9.2.3 (libbind.so).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7204 a95241bf-73f2-0310-859d-f6bbb57e9c96


libbind/DEVNOTES
libbind/Jamfile
libbind/config.h
libbind/dst/dst_api.c
libbind/dst/dst_internal.h
libbind/dst/hmac_link.c
libbind/dst/md5.h
libbind/dst/md5_dgst.c
libbind/dst/md5_locl.h
libbind/dst/support.c
libbind/headers/pthread_emu.h
libbind/headers/sys/un.h
libbind/headers/utmp.h
libbind/inet/inet_addr.c
libbind/inet/inet_cidr_ntop.c
libbind/inet/inet_cidr_pton.c
libbind/inet/inet_data.c
libbind/inet/inet_lnaof.c
libbind/inet/inet_makeaddr.c
libbind/inet/inet_net_ntop.c
libbind/inet/inet_net_pton.c
libbind/inet/inet_neta.c
libbind/inet/inet_netof.c
libbind/inet/inet_network.c
libbind/inet/inet_ntoa.c
libbind/inet/inet_ntop.c
libbind/inet/inet_pton.c
libbind/inet/nsap_addr.c
libbind/irs/dns.c
libbind/irs/dns_gr.c
libbind/irs/dns_ho.c
libbind/irs/dns_nw.c
libbind/irs/dns_p.h
libbind/irs/dns_pr.c
libbind/irs/dns_pw.c
libbind/irs/dns_sv.c
libbind/irs/gai_strerror.c
libbind/irs/gen.c
libbind/irs/gen_gr.c
libbind/irs/gen_ho.c
libbind/irs/gen_ng.c
libbind/irs/gen_nw.c
libbind/irs/gen_p.h
libbind/irs/gen_pr.c
libbind/irs/gen_pw.c
libbind/irs/gen_sv.c
libbind/irs/getaddrinfo.c
libbind/irs/getgrent.c
libbind/irs/getgrent_r.c
libbind/irs/gethostent.c
libbind/irs/gethostent_r.c
libbind/irs/getnameinfo.c
libbind/irs/getnetent.c
libbind/irs/getnetent_r.c
libbind/irs/getnetgrent.c
libbind/irs/getnetgrent_r.c
libbind/irs/getprotoent.c
libbind/irs/getprotoent_r.c
libbind/irs/getpwent.c
libbind/irs/getpwent_r.c
libbind/irs/getservent.c
libbind/irs/getservent_r.c
libbind/irs/hesiod.c
libbind/irs/hesiod_p.h
libbind/irs/irp.c
libbind/irs/irp_gr.c
libbind/irs/irp_ho.c
libbind/irs/irp_ng.c
libbind/irs/irp_nw.c
libbind/irs/irp_p.h
libbind/irs/irp_pr.c
libbind/irs/irp_pw.c
libbind/irs/irp_sv.c
libbind/irs/irpmarshall.c
libbind/irs/irs_data.c
libbind/irs/irs_data.h
libbind/irs/irs_p.h
libbind/irs/lcl.c
libbind/irs/lcl_gr.c
libbind/irs/lcl_ho.c
libbind/irs/lcl_ng.c
libbind/irs/lcl_nw.c
libbind/irs/lcl_p.h
libbind/irs/lcl_pr.c
libbind/irs/lcl_pw.c
libbind/irs/lcl_sv.c
libbind/irs/nis.c
libbind/irs/nis_gr.c
libbind/irs/nis_ho.c
libbind/irs/nis_ng.c
libbind/irs/nis_nw.c
libbind/irs/nis_p.h
libbind/irs/nis_pr.c
libbind/irs/nis_pw.c
libbind/irs/nis_sv.c
libbind/irs/nul_ng.c
libbind/irs/pathnames.h
libbind/irs/util.c
libbind/isc/assertions.c
libbind/isc/base64.c
libbind/isc/bitncmp.c
libbind/isc/ctl_clnt.c
libbind/isc/ctl_p.c
libbind/isc/ctl_p.h
libbind/isc/ctl_srvr.c
libbind/isc/ev_connects.c
libbind/isc/ev_files.c
libbind/isc/ev_streams.c
libbind/isc/ev_timers.c
libbind/isc/ev_waits.c
libbind/isc/eventlib.c
libbind/isc/eventlib_p.h
libbind/isc/heap.c
libbind/isc/hex.c
libbind/isc/logging.c
libbind/isc/logging_p.h
libbind/isc/memcluster.c
libbind/isc/movefile.c
libbind/isc/tree.c
libbind/nameser/ns_date.c
libbind/nameser/ns_name.c
libbind/nameser/ns_netint.c
libbind/nameser/ns_parse.c
libbind/nameser/ns_print.c
libbind/nameser/ns_samedomain.c
libbind/nameser/ns_sign.c
libbind/nameser/ns_ttl.c
libbind/nameser/ns_verify.c
libbind/port_after.h
libbind/port_before.h
libbind/resolv/herror.c
libbind/resolv/res_comp.c
libbind/resolv/res_data.c
libbind/resolv/res_debug.c
libbind/resolv/res_debug.h
libbind/resolv/res_findzonecut.c
libbind/resolv/res_init.c
libbind/resolv/res_mkquery.c
libbind/resolv/res_mkupdate.c
libbind/resolv/res_mkupdate.h
libbind/resolv/res_private.h
libbind/resolv/res_query.c
libbind/resolv/res_send.c
libbind/resolv/res_sendsigned.c
libbind/resolv/res_update.c
libbind/src/arc4random.c
libbind/src/ethers.c
libbind/src/pthread_emu.c
libbind/src/strsep.c
ffa9d4cc 15-Apr-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Now linking against libsocket.so.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7203 a95241bf-73f2-0310-859d-f6bbb57e9c96

eda72d26 15-Apr-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Checked in our version of libsocket.so. When building for BONE use this command:
BONE_VERSION=1 jam
This will remove the select() function from libsocket.so.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7202 a95241bf-73f2-0310-859d-f6bbb57e9c96

808485e4 15-Apr-2004 Waldemar Kornewald <wkornew@nowhere.fake>

libnet.so gets its own headers and is somewhat separated from the rest of the system to make it build fine.
Later we may decide to replace it with the libbind.so code.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7200 a95241bf-73f2-0310-859d-f6bbb57e9c96

ead04ffa 08-Apr-2004 Waldemar Kornewald <wkornew@nowhere.fake>

Our netstack works now! I used Vision and Net+ and it did not crash!!!
But I would not consider it stable.
Not tested on R5 net_server, only BONE (replaced BONE stack)!
Not compatible to BONE applications (you must use net_server apps or OBOS apps)!

Removed debug output from compat.c.
Fixed DNS bug (well, it's very hacky).

NOTE FOR BONE USERS: Uncomment the definition of BONE_VERSION in select.c!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7185 a95241bf-73f2-0310-859d-f6bbb57e9c96

504447b3 03-Feb-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

-nostdlib didn't link even with startfiles, which we needs for initialize_before() & co.
Soften to -nodefaultlibs link flag, so, which should have been in first place...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6487 a95241bf-73f2-0310-859d-f6bbb57e9c96

64a38447 02-Feb-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Okay, initialize_*() are not called on plain C libraries...
Re-enable _init() and _fini()


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6483 a95241bf-73f2-0310-859d-f6bbb57e9c96

f856b083 02-Feb-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Give an initial value to h_errno_tls, to detect if tls_allocate() is ever called.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6475 a95241bf-73f2-0310-859d-f6bbb57e9c96

a1219cfa 02-Feb-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Removing #undef h_errno and extern int h_errno declaration, as we must
use all the same netdb.h definition, which in turn use TLS to support
a thread-safe h_errno global variable...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6473 a95241bf-73f2-0310-859d-f6bbb57e9c96

4ff3011e 19-Jan-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Forgot to check this file on which libnet.so depends, which in turn broke the build of huge part of
networking kit! Sorry.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6161 a95241bf-73f2-0310-859d-f6bbb57e9c96

c52e77c0 16-Jan-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Pre-alpha networkingkit packaging network libs and apps.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6110 a95241bf-73f2-0310-859d-f6bbb57e9c96

7bd3c770 14-Jan-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Add an install_netwrok_etc_files rule to install our BINDy /etc/services,
/etc/resolv.conf and co installed.
Make libnet.so depend on these network etc files installation.
Make libnetapi.so depend on libnet.so.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6073 a95241bf-73f2-0310-859d-f6bbb57e9c96

26173baa 13-Jan-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Commit default /etc/protocols, /etc/resolv.conf and /etc/services files.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6065 a95241bf-73f2-0310-859d-f6bbb57e9c96

7dab5189 25-Oct-2003 Philippe Houdoin <philippe.houdoin@gmail.com>

Fix warnings.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5168 a95241bf-73f2-0310-859d-f6bbb57e9c96

b42a6ce4 25-Oct-2003 Philippe Houdoin <philippe.houdoin@gmail.com>

Fix warnings.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5164 a95241bf-73f2-0310-859d-f6bbb57e9c96

8c911f6c 17-Oct-2003 Waldemar Kornewald <wkornew@nowhere.fake>

h_errno is now declared in each file that uses it.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5070 a95241bf-73f2-0310-859d-f6bbb57e9c96

e3cdd30a 13-Oct-2003 Waldemar Kornewald <wkornew@nowhere.fake>

Quick and dirty fix of the DNS resolver bug. Now "ping localhost" works again! :))
The problem was that netdb.h defined a macro that always replaced h_errno with a function call so that libnet.so failed when res_query (and all other functions using h_errno, but this is where the bug occured for me) tried to assign a new value to h_errno which of course failed because it was actually assigned to the return value of _h_errnop().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5010 a95241bf-73f2-0310-859d-f6bbb57e9c96

c692649c 09-Jul-2003 Philippe Houdoin <philippe.houdoin@gmail.com>

Rollback to NET_STACK_GET_COOKIE trick for accept() implementation.
Use the stack_driver_args union even more...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3927 a95241bf-73f2-0310-859d-f6bbb57e9c96

a91f266f 18-Jun-2003 Philippe Houdoin <philippe.houdoin@gmail.com>

Hide the accept() trick more deeper: now the stack driver manage the trick himself.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3572 a95241bf-73f2-0310-859d-f6bbb57e9c96

5d7c65c2 18-Jun-2003 Philippe Houdoin <philippe.houdoin@gmail.com>

Rollback to original xBSD DNS resolver implementation _res global variable name.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3571 a95241bf-73f2-0310-859d-f6bbb57e9c96

662c015f 18-Jun-2003 Philippe Houdoin <philippe.houdoin@gmail.com>

Fix the undefined _res symbol linker error: we don't link anymore our own libnet.so
against default libs, which include BeOS's libnet.so)!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3569 a95241bf-73f2-0310-859d-f6bbb57e9c96

26e36774 18-Jun-2003 Niels Sascha Reedijk <niels.reedijk@gmail.com>

Fix an issue where the _res symbol is undeclared due to another symbol with
the same name somewhere else( I think). At least it works now. Renamed
to _resolve_configuration (probably will never clash with anything else ever)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3565 a95241bf-73f2-0310-859d-f6bbb57e9c96

09eceed9 17-Jun-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added support for installing the networking stuff. Use: jam [un]install-networking.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3557 a95241bf-73f2-0310-859d-f6bbb57e9c96

3b3c3547 16-May-2003 beveloper <beveloper@nowhere.fake>

Updated jamfiles to match recent cvs changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3249 a95241bf-73f2-0310-859d-f6bbb57e9c96

665b241c 16-Dec-2002 Philippe Houdoin <philippe.houdoin@gmail.com>

Checked-in updated implementation of these classes written by
Scott Mansfield.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2263 a95241bf-73f2-0310-859d-f6bbb57e9c96

d2f48fdd 05-Nov-2002 Philippe Houdoin <philippe.houdoin@gmail.com>

Make libnet.so live switchable between kernel land stack and debug userland stack:
$ export NET_STACK_DRIVER_PATH=/dev/net/server -> userland debug stack (net_server-like)
$ export -n NET_STACK_DRIVER_PATH -> kernelland stack


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1849 a95241bf-73f2-0310-859d-f6bbb57e9c96

ad68e9c9 02-Nov-2002 François Revol <revol@free.fr>

select() fix. No wonder why ffserver didn't work =)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1825 a95241bf-73f2-0310-859d-f6bbb57e9c96

ae0638a6 31-Oct-2002 Philippe Houdoin <philippe.houdoin@gmail.com>

On behalf of Scott Mansfield, here come 3/4 of libnetapi.so rewritten,
and now building for your pleasure ;-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1813 a95241bf-73f2-0310-859d-f6bbb57e9c96

e7825532 29-Oct-2002 Axel Dörfler <axeld@pinc-software.de>

Fixed a small possible bug in the R5 select() implementation for the net kit.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1782 a95241bf-73f2-0310-859d-f6bbb57e9c96

42415555 29-Oct-2002 beveloper <beveloper@nowhere.fake>

after many changes, the network stack can now be build


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1776 a95241bf-73f2-0310-859d-f6bbb57e9c96

2f22e3ab 25-Oct-2002 beveloper <beveloper@nowhere.fake>

small change


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1659 a95241bf-73f2-0310-859d-f6bbb57e9c96

9fc71646 23-Oct-2002 beveloper <beveloper@nowhere.fake>

allow building everything without local(tree external) header files beeing
used for kernel or kit components


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1630 a95241bf-73f2-0310-859d-f6bbb57e9c96

61d3dba8 16-Oct-2002 Philippe Houdoin <philippe.houdoin@gmail.com>

Re-written by Scott Mansfield <thephantom@mac.com


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1549 a95241bf-73f2-0310-859d-f6bbb57e9c96

c5c71393 28-Aug-2002 beveloper <beveloper@nowhere.fake>

Started changes to get this compiling.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@917 a95241bf-73f2-0310-859d-f6bbb57e9c96

f048ab01 28-Aug-2002 Philippe Houdoin <philippe.houdoin@gmail.com>

Ooops, libnetapi.so should link against libnet.so!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@916 a95241bf-73f2-0310-859d-f6bbb57e9c96

8483ec04 27-Aug-2002 beveloper <beveloper@nowhere.fake>

include the net kit libaries


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@902 a95241bf-73f2-0310-859d-f6bbb57e9c96

f3dfda17 27-Aug-2002 Philippe Houdoin <philippe.houdoin@gmail.com>

Moving net kit libnet.so and libnetapi.so source code to /current.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@895 a95241bf-73f2-0310-859d-f6bbb57e9c96