-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
kuznet@xxxxxxxxxxxxx wrote:
> Datagram connect() is exactly selection of the addresses, nothing more.
I've now implemented a userlevel-only version of the destination address
selection algorithm in glibc's getaddrinfo. The cost is 4 additional
system calls per returned address plus potentially more (see below).
The code has also limitation I don't think a userlevel implementation
can overcome:
~ rules 3, 4, and 7 are not implemented. This info is, afaik, only
available inside the kernel (if at all)
~ the source address selection also needs the label and precedence
information. Therefore the kernel would have to share this
information.
~ to read the label/preference data more syscalls are needed. And
there is the question when to read that info. Once per program
run? What about changes to the policies and programs which run
for a long time?
I'm OK with having this code I wrote as a backup solution. But I still
would like to see the kernel supporting it directly. There are programs
which do a lot name lookups and speed is important.
- --
➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
iD8DBQE/ud+O2ijCOnn/RHQRAu23AKDNzNfum+OQFwt2aJ5IgI87yEJTPACgoikN
TKRhY6Kuu56b22mlh+Cguvs=
=Q9dl
-----END PGP SIGNATURE-----
|