diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2010-02-07 20:03:20 +0100 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2010-02-07 20:03:20 +0100 |
commit | 6daa792eab1488d013fefc5eb7e4d01f40f38687 (patch) | |
tree | 6391cc46bb9fc8b859d99175ea317e5fa7b37959 /package/aiccu/src/common | |
parent | adcaca72539b2ff4a5f4deee00d5f0251378ac9b (diff) |
change defaults for CONFIG/BUILD/INSTALL styles
All packages need an update, so here is a very huge commit.
Most of the 460 source packages use automatic style for configuration,
building and installing. Make these styles default to "auto".
If you have a package, which does not conform to this, just use
manual style and add a do-$task make target.
I added a new style named AUTOTOOL style, which is needed for some
broken packages, which needs to be updated via autoconf or automake.
I renamed CONFIGURE_STYLE to CONFIG_STYLE.
Updates for some packages, which have newer upstream versions.
Renaming of all package/*/extra directories. Use the directory
src/ to provide overwrites of source files or to add the code, when
no upstream package is available or used. src directory will be automatically
used.
Diffstat (limited to 'package/aiccu/src/common')
-rw-r--r-- | package/aiccu/src/common/dn_skipname.c | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/package/aiccu/src/common/dn_skipname.c b/package/aiccu/src/common/dn_skipname.c new file mode 100644 index 000000000..f2219f335 --- /dev/null +++ b/package/aiccu/src/common/dn_skipname.c @@ -0,0 +1,51 @@ +#include <errno.h> +#include <resolv.h> + +/* Ripped from glibc 2.4 sources. */ + +/* + * ns_name_skip(ptrptr, eom) + * Advance *ptrptr to skip over the compressed name it points at. + * return: + * 0 on success, -1 (with errno set) on failure. + */ +int ns_name_skip(const u_char **ptrptr, const u_char *eom) +{ + const u_char *cp; + u_int n; + + cp = *ptrptr; + while (cp < eom && (n = *cp++) != 0) + { + /* Check for indirection. */ + switch (n & NS_CMPRSFLGS) { + case 0: /* normal case, n == len */ + cp += n; + continue; + case NS_CMPRSFLGS: /* indirection */ + cp++; + break; + default: /* illegal type */ + errno = EMSGSIZE; + return (-1); + } + break; + } + if (cp > eom) + { + errno = EMSGSIZE; + return (-1); + } + *ptrptr = cp; + return (0); +} + +int dn_skipname(const u_char *ptr, const u_char *eom) +{ + const u_char *saveptr = ptr; + + if(ns_name_skip(&ptr, eom) == -1) + return (-1); + return (ptr - saveptr); +} + |