Skip Menu |

Subject: CVS Commit
Download (untitled) / with headers
text/plain 1.4KiB
With the cache on Mac OS X, and likely to be enabled eventually on other
platforms, this is going to wind up being a non-trivial amount of code on most
platforms, and updating the cache code to work on other configurations is
likely to take a few rounds. Rather than recompile the world and add a bunch
of code to each object file doing name lookups, moving the code into the
support library that already defines the static data (list head, mutex) should
make things simpler.

(TODO: Fix calling conventions for Windows?)

* include/fake-addrinfo.h: Move most of code content into
(krb5int_getaddrinfo, krb5int_freeaddrinfo, krb5int_getnameinfo,
krb5int_gai_strerror): Declare.
(getaddrinfo, freeaddrinfo, getnameinfo, gai_strerror): Define as macros
mapping to the krb5int_ function names.
* util/support/fake-addrinfo.c: Import most of the contents of
include/fake-addrinfo.h, so we only compile it once.
(krb5int_getaddrinfo, krb5int_freeaddrinfo, krb5int_getnameinfo,
krb5int_gai_strerror): New functions, always defined and exported.
* util/support/libkrb5support.exports: Export the new functions, not the old
_fac symbols.

To generate a diff of this commit:

cvs diff -r1.472 -r1.473 krb5/src/include/ChangeLog
cvs diff -r1.52 -r1.53 krb5/src/include/fake-addrinfo.h
cvs diff -r1.19 -r1.20 krb5/src/util/support/ChangeLog
cvs diff -r1.4 -r1.5 krb5/src/util/support/fake-addrinfo.c
cvs diff -r1.3 -r1.4 krb5/src/util/support/libkrb5support.exports
Subject: CVS Commit
Fix typo in last change.

To generate a diff of this commit:

cvs diff -r1.53 -r1.54 krb5/src/include/fake-addrinfo.h
Subject: CVS Commit
Make static linking not require -lsocket, -lnsl, etc.
Don't duplicate macro definitions.

Header files and comments still need some cleanup.

* cache-addrinfo.h, init-addrinfo.c: New files, split out from fake-addrinfo.c.
* fake-addrinfo.c: Include cache-addrinfo.h.
(FAI_CACHE, struct face, struct fac): Moved to cache-addrinfo.h.
(krb5int_fac, krb5int_init_fac, krb5int_fini_fac): Moved to init-addrinfo.c.
(addrinfo, struct addrinfo): Don't define.
(AI_* and NI_* and EAI_* macros): Don't define.
* threads.c: Include cache-addrinfo.h.
(krb5int_init_fac, krb5int_fini_fac): Don't declare.

To generate a diff of this commit:

cvs diff -r1.20 -r1.21 krb5/src/util/support/ChangeLog
cvs diff -r1.11 -r1.12 krb5/src/util/support/
cvs diff -r1.5 -r1.6 krb5/src/util/support/fake-addrinfo.c
cvs diff -r1.11 -r1.12 krb5/src/util/support/threads.c
cvs diff -r0 -r1.1 krb5/src/util/support/cache-addrinfo.h