unofficial mirror of libc-alpha@sourceware.org
 help / color / mirror / Atom feed
From: Florian Weimer via Libc-alpha <libc-alpha@sourceware.org>
To: libc-alpha@sourceware.org
Subject: [PATCH v3 00/24] Move nss_dns and parts of libresolv into libc
Date: Thu, 15 Jul 2021 11:08:52 +0200	[thread overview]
Message-ID: <cover.1626339931.git.fweimer@redhat.com> (raw)

I've pushed six already-approved patches, but I didn't want to
resequence the rest.

ns_skip_name has been fixed.  I fuzz-tested it against the old
implementation and found what is arguably a bug in the old
implementation.

I updated the NEWS file with a list of deprecated functions, and a few
more based on a review of the remaining libresolv contents.

I hope I addressed all review comments.

Thanks,
Florian

Florian Weimer (24):
  resolv: Deprecate legacy interfaces in libresolv
  resolv: Move ns_name_skip to its own file and into libc (bug 28091)
  resolv: Move ns_name_uncompress into its own file and into libc
  resolv: Move ns_name_pton into its own file and into libc
  resolv: Move ns_name_pack into its own file and into libc
  resolv: Move ns_name_compress into its own file and into libc
  resolv: Move dn_expand to its own file and into libc
  resolv: Move _getlong, _getshort, __putlong, __putshort to res-putget
  resolv: Move dn_comp to its own file and into libc
  resolv: Move dn_skipname to its own file and into libc
  resolv: Rename res_comp.c to res-name-checking.c and move into libc
  resolv: Move __res_get_nsaddr to its own file and into libc
  resolv: Move res_isourserver to its own file and reformat to GNU style
  resolv: Move ns_makecanon into its own file, and into libc
  resolv: Move ns_samename into its own file, and into libc
  resolv: Move res_nameinquery to its own file and into libc
  resolv: Move res_queriesmatch to its own file and into libc
  resolv: Move __res_context_hostalias into its own file and into libc
  resolv: Move res_hostalias into its own file, along with hostalias
  resolv: Move res_send, res_nsend into libc
  resolv: Move res_mkquery, res_nmkquery into libc
  resolv: Move res_query functions into libc
  resolv: Move nss_dns into libc
  nss: Directly load nss_dns, without going through dlsym/dlopen

 NEWS                                          |  14 +
 include/arpa/nameser.h                        |  21 +-
 include/nss_dns.h                             |  39 ++
 include/resolv.h                              |  22 +-
 inet/arpa/inet.h                              |   3 +-
 nss/nss_files_functions.c                     |   6 -
 nss/nss_module.c                              |  58 ++-
 nss/nss_module.h                              |  10 +-
 resolv/Makefile                               |  44 +-
 resolv/Versions                               | 121 ++++--
 resolv/arpa/nameser.h                         |  33 +-
 resolv/compat-gethnamaddr.c                   |  13 +-
 resolv/dn_comp.c                              | 103 +++++
 resolv/dn_expand.c                            | 112 +++++
 resolv/dn_skipname.c                          | 103 +++++
 resolv/ns_makecanon.c                         |  50 +++
 resolv/ns_name.c                              | 407 ------------------
 resolv/ns_name_compress.c                     |  50 +++
 resolv/ns_name_pack.c                         | 202 +++++++++
 resolv/ns_name_pton.c                         | 157 +++++++
 resolv/ns_name_skip.c                         |  70 +++
 resolv/ns_name_uncompress.c                   |  45 ++
 resolv/ns_parse.c                             |   4 +-
 resolv/ns_print.c                             |   8 +-
 resolv/ns_samedomain.c                        |  62 +--
 resolv/ns_samename.c                          |  38 ++
 resolv/nss_dns/dns-canon.c                    |  12 +-
 resolv/nss_dns/dns-host.c                     |  50 +--
 resolv/nss_dns/dns-network.c                  |  15 +-
 resolv/nss_dns_functions.c                    |  40 ++
 resolv/{res_comp.c => res-name-checking.c}    | 116 ++---
 resolv/res-putget.c                           | 112 +++++
 resolv/res_context_hostalias.c                | 132 ++++++
 resolv/res_debug.c                            |   4 +-
 resolv/res_enable_icmp.c                      |   4 +-
 resolv/res_get_nsaddr.c                       |  39 ++
 resolv/res_hostalias.c                        |  51 +++
 resolv/res_isourserver.c                      | 134 ++++++
 resolv/res_mkquery.c                          |  48 ++-
 resolv/res_nameinquery.c                      | 115 +++++
 resolv/res_queriesmatch.c                     | 129 ++++++
 resolv/res_query.c                            | 158 +++----
 resolv/res_send.c                             | 232 ++--------
 resolv/resolv-deprecated.c                    |  56 +++
 resolv/resolv-internal.h                      |  21 +-
 resolv/resolv.h                               | 103 ++---
 sysdeps/mach/hurd/i386/libc.abilist           |  44 ++
 sysdeps/mach/hurd/i386/libresolv.abilist      |  22 -
 sysdeps/unix/sysv/linux/aarch64/libc.abilist  |  44 ++
 .../unix/sysv/linux/aarch64/libresolv.abilist |  22 -
 sysdeps/unix/sysv/linux/alpha/libc.abilist    |  49 +++
 .../unix/sysv/linux/alpha/libresolv.abilist   |  27 --
 sysdeps/unix/sysv/linux/arc/libc.abilist      |  44 ++
 sysdeps/unix/sysv/linux/arc/libresolv.abilist |  22 -
 sysdeps/unix/sysv/linux/arm/be/libc.abilist   |  44 ++
 .../unix/sysv/linux/arm/be/libresolv.abilist  |  22 -
 sysdeps/unix/sysv/linux/arm/le/libc.abilist   |  44 ++
 .../unix/sysv/linux/arm/le/libresolv.abilist  |  22 -
 sysdeps/unix/sysv/linux/csky/libc.abilist     |  44 ++
 .../unix/sysv/linux/csky/libresolv.abilist    |  22 -
 sysdeps/unix/sysv/linux/hppa/libc.abilist     |  49 +++
 .../unix/sysv/linux/hppa/libresolv.abilist    |  27 --
 sysdeps/unix/sysv/linux/i386/libc.abilist     |  49 +++
 .../unix/sysv/linux/i386/libresolv.abilist    |  27 --
 sysdeps/unix/sysv/linux/ia64/libc.abilist     |  49 +++
 .../unix/sysv/linux/ia64/libresolv.abilist    |  27 --
 .../sysv/linux/m68k/coldfire/libc.abilist     |  44 ++
 .../linux/m68k/coldfire/libresolv.abilist     |  22 -
 .../unix/sysv/linux/m68k/m680x0/libc.abilist  |  49 +++
 .../sysv/linux/m68k/m680x0/libresolv.abilist  |  27 --
 .../sysv/linux/microblaze/be/libc.abilist     |  44 ++
 .../linux/microblaze/be/libresolv.abilist     |  22 -
 .../sysv/linux/microblaze/le/libc.abilist     |  44 ++
 .../linux/microblaze/le/libresolv.abilist     |  22 -
 .../sysv/linux/mips/mips32/fpu/libc.abilist   |  49 +++
 .../sysv/linux/mips/mips32/libresolv.abilist  |  27 --
 .../sysv/linux/mips/mips32/nofpu/libc.abilist |  49 +++
 .../sysv/linux/mips/mips64/n32/libc.abilist   |  49 +++
 .../linux/mips/mips64/n32/libresolv.abilist   |  27 --
 .../sysv/linux/mips/mips64/n64/libc.abilist   |  49 +++
 .../linux/mips/mips64/n64/libresolv.abilist   |  27 --
 sysdeps/unix/sysv/linux/nios2/libc.abilist    |  44 ++
 .../unix/sysv/linux/nios2/libresolv.abilist   |  22 -
 .../linux/powerpc/powerpc32/fpu/libc.abilist  |  49 +++
 .../linux/powerpc/powerpc32/libresolv.abilist |  27 --
 .../powerpc/powerpc32/nofpu/libc.abilist      |  49 +++
 .../linux/powerpc/powerpc64/be/libc.abilist   |  44 ++
 .../powerpc/powerpc64/be/libresolv.abilist    |  22 -
 .../linux/powerpc/powerpc64/le/libc.abilist   |  44 ++
 .../powerpc/powerpc64/le/libresolv.abilist    |  22 -
 .../unix/sysv/linux/riscv/rv32/libc.abilist   |  44 ++
 .../sysv/linux/riscv/rv32/libresolv.abilist   |  22 -
 .../unix/sysv/linux/riscv/rv64/libc.abilist   |  44 ++
 .../sysv/linux/riscv/rv64/libresolv.abilist   |  22 -
 .../unix/sysv/linux/s390/s390-32/libc.abilist |  49 +++
 .../sysv/linux/s390/s390-32/libresolv.abilist |  27 --
 .../unix/sysv/linux/s390/s390-64/libc.abilist |  44 ++
 .../sysv/linux/s390/s390-64/libresolv.abilist |  22 -
 sysdeps/unix/sysv/linux/sh/be/libc.abilist    |  49 +++
 .../unix/sysv/linux/sh/be/libresolv.abilist   |  27 --
 sysdeps/unix/sysv/linux/sh/le/libc.abilist    |  49 +++
 .../unix/sysv/linux/sh/le/libresolv.abilist   |  27 --
 .../sysv/linux/sparc/sparc32/libc.abilist     |  49 +++
 .../linux/sparc/sparc32/libresolv.abilist     |  27 --
 .../sysv/linux/sparc/sparc64/libc.abilist     |  49 +++
 .../linux/sparc/sparc64/libresolv.abilist     |  27 --
 .../unix/sysv/linux/x86_64/64/libc.abilist    |  44 ++
 .../sysv/linux/x86_64/64/libresolv.abilist    |  22 -
 .../unix/sysv/linux/x86_64/x32/libc.abilist   |  44 ++
 .../sysv/linux/x86_64/x32/libresolv.abilist   |  22 -
 110 files changed, 3818 insertions(+), 1832 deletions(-)
 create mode 100644 include/nss_dns.h
 create mode 100644 resolv/dn_comp.c
 create mode 100644 resolv/dn_expand.c
 create mode 100644 resolv/dn_skipname.c
 create mode 100644 resolv/ns_makecanon.c
 create mode 100644 resolv/ns_name_compress.c
 create mode 100644 resolv/ns_name_pack.c
 create mode 100644 resolv/ns_name_pton.c
 create mode 100644 resolv/ns_name_skip.c
 create mode 100644 resolv/ns_name_uncompress.c
 create mode 100644 resolv/ns_samename.c
 create mode 100644 resolv/nss_dns_functions.c
 rename resolv/{res_comp.c => res-name-checking.c} (73%)
 create mode 100644 resolv/res-putget.c
 create mode 100644 resolv/res_context_hostalias.c
 create mode 100644 resolv/res_get_nsaddr.c
 create mode 100644 resolv/res_hostalias.c
 create mode 100644 resolv/res_isourserver.c
 create mode 100644 resolv/res_nameinquery.c
 create mode 100644 resolv/res_queriesmatch.c
 create mode 100644 resolv/resolv-deprecated.c

-- 
2.31.1


             reply	other threads:[~2021-07-15  9:09 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-15  9:08 Florian Weimer via Libc-alpha [this message]
2021-07-15  9:09 ` [PATCH 01/24] resolv: Deprecate legacy interfaces in libresolv Florian Weimer via Libc-alpha
2021-07-15  9:30   ` Andreas Schwab
2021-07-15  9:32     ` Florian Weimer via Libc-alpha
2021-07-19  1:48   ` Carlos O'Donell via Libc-alpha
2021-07-15  9:09 ` [PATCH 02/24] resolv: Move ns_name_skip to its own file and into libc (bug 28091) Florian Weimer via Libc-alpha
2021-07-19  1:52   ` Carlos O'Donell via Libc-alpha
2021-07-15  9:09 ` [PATCH 03/24] resolv: Move ns_name_uncompress into its own file and into libc Florian Weimer via Libc-alpha
2021-07-15  9:09 ` [PATCH 04/24] resolv: Move ns_name_pton " Florian Weimer via Libc-alpha
2021-07-15  9:09 ` [PATCH 05/24] resolv: Move ns_name_pack " Florian Weimer via Libc-alpha
2021-07-15  9:09 ` [PATCH 06/24] resolv: Move ns_name_compress " Florian Weimer via Libc-alpha
2021-07-15  9:09 ` [PATCH 07/24] resolv: Move dn_expand to " Florian Weimer via Libc-alpha
2021-07-15  9:09 ` [PATCH 08/24] resolv: Move _getlong, _getshort, __putlong, __putshort to res-putget Florian Weimer via Libc-alpha
2021-07-15  9:09 ` [PATCH 09/24] resolv: Move dn_comp to its own file and into libc Florian Weimer via Libc-alpha
2021-07-15  9:09 ` [PATCH 10/24] resolv: Move dn_skipname " Florian Weimer via Libc-alpha
2021-07-15  9:09 ` [PATCH 11/24] resolv: Rename res_comp.c to res-name-checking.c and move " Florian Weimer via Libc-alpha
2021-07-15  9:10 ` [PATCH 12/24] resolv: Move __res_get_nsaddr to its own file and " Florian Weimer via Libc-alpha
2021-07-15  9:10 ` [PATCH 13/24] resolv: Move res_isourserver to its own file and reformat to GNU style Florian Weimer via Libc-alpha
2021-07-15  9:10 ` [PATCH 14/24] resolv: Move ns_makecanon into its own file, and into libc Florian Weimer via Libc-alpha
2021-07-15  9:10 ` [PATCH 15/24] resolv: Move ns_samename " Florian Weimer via Libc-alpha
2021-07-15  9:10 ` [PATCH 16/24] resolv: Move res_nameinquery to its own file " Florian Weimer via Libc-alpha
2021-07-15  9:10 ` [PATCH 17/24] resolv: Move res_queriesmatch " Florian Weimer via Libc-alpha
2021-07-15  9:10 ` [PATCH 18/24] resolv: Move __res_context_hostalias into " Florian Weimer via Libc-alpha
2021-07-15  9:10 ` [PATCH 19/24] resolv: Move res_hostalias into its own file, along with hostalias Florian Weimer via Libc-alpha
2021-07-15  9:10 ` [PATCH 20/24] resolv: Move res_send, res_nsend into libc Florian Weimer via Libc-alpha
2021-07-19  1:54   ` Carlos O'Donell via Libc-alpha
2021-07-15  9:10 ` [PATCH 21/24] resolv: Move res_mkquery, res_nmkquery " Florian Weimer via Libc-alpha
2021-07-15  9:10 ` [PATCH 22/24] resolv: Move res_query functions " Florian Weimer via Libc-alpha
2021-07-21  9:54   ` Andreas Schwab
2021-07-21 10:16     ` Florian Weimer via Libc-alpha
2021-07-15  9:10 ` [PATCH 23/24] resolv: Move nss_dns " Florian Weimer via Libc-alpha
2021-07-15  9:11 ` [PATCH 24/24] nss: Directly load nss_dns, without going through dlsym/dlopen Florian Weimer via Libc-alpha
2021-07-20  9:17 ` [PATCH v3 00/24] Move nss_dns and parts of libresolv into libc Andreas Schwab
2021-07-20 10:26   ` Florian Weimer via Libc-alpha

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/libc/involved.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1626339931.git.fweimer@redhat.com \
    --to=libc-alpha@sourceware.org \
    --cc=fweimer@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).