[PATCH 00/41] multipath-tools: comply with C library reserved names

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The first 2 patches are minor, independent fixes.

The rest of the set renames identifiers that possibly conflict with reserved
names of the C library, and should have no influence on the functionality
of the code.

According to the glibc docs, user code must not redefine any type, function,
variable, or macro names that are part of the ISO C standard [1]. Moreover,
identifiers must not start with "__" (double underscore) or underscore and
capital letter, and names starting with underscore are forbidden for globally
visible symbols.

This patch series tries to make the multipath-tools code comply with these
requirements, at least to some extent. I haven't bothered renaming local
or static variables, or variables like "__x" in macro bodies, for example.
The starting point for the series was the request not to export strlcat
and strlcpy any more [2].

In most cases, I have simply replaced __xyz() or _xyz() by xyz__() (two
underscores to make them better visible). In some cases, when xyz() was not
defined, I've simply renamed _xyz() to xyz(). There are exceptions to these
rules.

The set also fixes some typos where __attribute__ was misspelled.

[1] https://www.gnu.org/software/libc/manual/html_node/Reserved-Names.html
[2] https://github.com/opensvc/multipath-tools/issues/91

Martin Wilck (41):
  multipath-tools tests: make alias.test succeed with increased
    verbosity
  libmpathutil: avoid extra memory allocation in print_strbuf()
  libmpathutil: rename strlcat and strlcpy
  libmpathutil.version: remove strlcpy and strlcat, and LIBMULTIPATH
    section
  libmpathutil: fix __attribute typo in log_pthread.c
  libmultipath: devmapper.c: rename __DR_UNUSED__, and fix __attribute
    typo
  multipathd: fix __attribute typo
  multipath-tools: use common convention for "header file included"
    macros
  libmpathcmd: rename __mpath_connect() to mpath_connect__()
  libmpathutil: rename _MAX_CMD_LEN
  libmpathutil: rename __append_strbuf_str() and __get_strbuf_buf()
  libmpathutil: rename _log_bitfield_overflow()
  libmpathutil: rename _install_keyword() to install_keyword__()
  libmultipath: rename _NVME_LIB_C
  libmultipath: checkers.h: fix __CHECKER_FIRST_MSG in comment
  libmultipath: rename identifiers with leading underscores in
    devmapper.h
  libmultipath: rename identifiers with leading underscores in
    discovery.h
  libmultipath: rename __snprint_config()
  libmultipath: rename __unlock()
  libmultipath: rename __sysfs_attr_get_value()
  libmultipath: rename __snprint_foreign_topology()
  libmultipath: rename macros with double underscores in propsel.c
  libmultipath: rename enum values with double underscores in structs.h
  libmultipath: rename macros starting with underscore
  libmultipath: rename __internal_config variable
  libmultipath: rename _dm_flush_map() to dm_flush_map__()
  libmultipath: foreign: rename _check() to check__()
  libmultipath: rename _cleanup_foreign()
  libmultipath: rename _init_config()
  libmultipath: rename symbols starting with underscore in print.h
  libmultipath: remove dead code in pgpolicies.h
  libmultipath: remove struct and union names in cciss.h
  libmpathpersist: rename functions with double leading underscore
  libdmmp: rename macros starting with _DMMP
  libdmmp: rename enum values and variables starting with _DMMP_
  libdmmp: rename non-static functions starting with underscore
  multipathd: rename symbols with double leading underscore
  multipath-tools tests: rename functions with double underscores
  kpartx: rename macros with leading underscores
  libmpathutil: rename struct _vector to vector_s
  libmultipath: don't define __user

 create-config.mk                         |  4 +-
 kpartx/byteorder.h                       |  6 +-
 kpartx/crc32.h                           |  6 +-
 kpartx/dasd.h                            |  6 +-
 kpartx/devmapper.c                       | 20 +++---
 kpartx/devmapper.h                       |  6 +-
 kpartx/dos.h                             |  2 +-
 kpartx/efi.h                             |  6 +-
 kpartx/gpt.h                             |  4 +-
 kpartx/kpartx.h                          |  6 +-
 kpartx/lopart.h                          |  3 +
 kpartx/mac.h                             |  4 +-
 kpartx/xstrncpy.h                        |  3 +
 libdmmp/libdmmp.c                        | 72 +++++++++----------
 libdmmp/libdmmp/libdmmp.h                |  6 +-
 libdmmp/libdmmp_misc.c                   | 10 +--
 libdmmp/libdmmp_mp.c                     | 12 ++--
 libdmmp/libdmmp_path.c                   | 22 +++---
 libdmmp/libdmmp_pg.c                     | 40 +++++------
 libdmmp/libdmmp_private.h                | 32 ++++-----
 libmpathcmd/libmpathcmd.version          |  4 +-
 libmpathcmd/mpath_cmd.c                  |  4 +-
 libmpathcmd/mpath_cmd.h                  |  8 +--
 libmpathpersist/libmpathpersist.version  |  6 +-
 libmpathpersist/mpath_persist.c          | 22 +++---
 libmpathpersist/mpath_persist.h          | 45 ++++++------
 libmpathpersist/mpath_persist_int.h      |  6 +-
 libmpathpersist/mpath_pr_ioctl.h         |  5 ++
 libmpathpersist/mpathpr.h                |  4 +-
 libmpathutil/debug.h                     |  6 +-
 libmpathutil/globals.h                   |  4 +-
 libmpathutil/libmpathutil.version        | 90 ++++++++++--------------
 libmpathutil/log.h                       |  6 +-
 libmpathutil/log_pthread.c               |  2 +-
 libmpathutil/log_pthread.h               |  6 +-
 libmpathutil/msort.h                     |  4 +-
 libmpathutil/parser.c                    |  6 +-
 libmpathutil/parser.h                    | 32 ++++-----
 libmpathutil/strbuf.c                    | 29 +++++---
 libmpathutil/strbuf.h                    | 10 +--
 libmpathutil/time-util.h                 |  6 +-
 libmpathutil/util.c                      |  6 +-
 libmpathutil/util.h                      | 25 ++++---
 libmpathutil/uxsock.h                    |  7 +-
 libmpathutil/vector.c                    |  2 +-
 libmpathutil/vector.h                    | 10 +--
 libmpathvalid/mpath_valid.h              |  6 +-
 libmultipath/alias.c                     |  4 +-
 libmultipath/alias.h                     |  6 +-
 libmultipath/blacklist.c                 | 14 ++--
 libmultipath/blacklist.h                 | 14 ++--
 libmultipath/checkers.h                  |  8 +--
 libmultipath/checkers/cciss.h            | 22 +++---
 libmultipath/checkers/directio.c         |  8 +--
 libmultipath/checkers/directio.h         |  6 +-
 libmultipath/checkers/emc_clariion.c     | 20 +++---
 libmultipath/checkers/emc_clariion.h     |  6 +-
 libmultipath/checkers/hp_sw.h            |  6 +-
 libmultipath/checkers/rdac.c             | 20 +++---
 libmultipath/checkers/rdac.h             |  6 +-
 libmultipath/checkers/readsector0.h      |  6 +-
 libmultipath/checkers/tur.c              | 10 +--
 libmultipath/checkers/tur.h              |  6 +-
 libmultipath/config.c                    | 30 ++++----
 libmultipath/config.h                    | 10 +--
 libmultipath/configure.c                 |  2 +-
 libmultipath/configure.h                 |  6 +-
 libmultipath/defaults.h                  |  7 +-
 libmultipath/devmapper.c                 | 28 ++++----
 libmultipath/devmapper.h                 | 27 +++----
 libmultipath/dict.c                      |  4 +-
 libmultipath/dict.h                      |  9 +--
 libmultipath/discovery.c                 | 18 ++---
 libmultipath/discovery.h                 | 38 +++++-----
 libmultipath/dm-generic.c                |  8 +--
 libmultipath/dm-generic.h                |  6 +-
 libmultipath/dmparser.c                  |  2 +-
 libmultipath/dmparser.h                  |  7 +-
 libmultipath/file.h                      |  6 +-
 libmultipath/foreign.c                   | 36 +++++-----
 libmultipath/foreign.h                   | 19 ++---
 libmultipath/foreign/nvme.c              | 50 ++++++-------
 libmultipath/generic.h                   | 14 ++--
 libmultipath/hwtable.h                   |  6 +-
 libmultipath/io_err_stat.c               |  4 +-
 libmultipath/io_err_stat.h               |  6 +-
 libmultipath/libmultipath.version        | 20 +++---
 libmultipath/libsg.h                     |  6 +-
 libmultipath/list.h                      |  6 +-
 libmultipath/lock.c                      |  4 +-
 libmultipath/lock.h                      |  8 +--
 libmultipath/nvme-lib.c                  |  2 +-
 libmultipath/nvme-lib.h                  |  8 +--
 libmultipath/nvme/argconfig.h            |  4 +-
 libmultipath/nvme/json.h                 |  4 +-
 libmultipath/nvme/linux/nvme.h           |  6 +-
 libmultipath/nvme/linux/nvme_ioctl.h     |  6 +-
 libmultipath/nvme/nvme-ioctl.h           |  6 +-
 libmultipath/nvme/nvme.h                 |  6 +-
 libmultipath/nvme/plugin.h               |  4 +-
 libmultipath/pgpolicies.h                | 10 +--
 libmultipath/print.c                     | 68 +++++++++---------
 libmultipath/print.h                     | 34 ++++-----
 libmultipath/prio.h                      |  6 +-
 libmultipath/prioritizers/alua.h         |  4 +-
 libmultipath/prioritizers/alua_rtpg.c    |  1 -
 libmultipath/prioritizers/alua_rtpg.h    |  6 +-
 libmultipath/prioritizers/alua_spc3.h    |  6 +-
 libmultipath/prioritizers/weightedpath.h |  4 +-
 libmultipath/prkey.h                     |  6 +-
 libmultipath/propsel.c                   | 10 +--
 libmultipath/propsel.h                   |  3 +
 libmultipath/sg_include.h                |  4 +-
 libmultipath/structs.c                   | 12 ++--
 libmultipath/structs.h                   | 22 +++---
 libmultipath/structs_vec.c               |  2 +-
 libmultipath/structs_vec.h               |  8 +--
 libmultipath/switchgroup.h               |  5 ++
 libmultipath/sysfs.c                     |  6 +-
 libmultipath/sysfs.h                     |  4 +-
 libmultipath/uevent.h                    |  6 +-
 libmultipath/unaligned.h                 |  6 +-
 libmultipath/valid.c                     | 14 ++--
 libmultipath/valid.h                     |  6 +-
 libmultipath/version.h                   |  6 +-
 libmultipath/wwids.h                     |  6 +-
 mpathpersist/main.c                      |  6 +-
 mpathpersist/main.h                      |  4 ++
 multipathd/cli.c                         |  6 +-
 multipathd/cli.h                         | 16 ++---
 multipathd/cli_handlers.c                |  8 +--
 multipathd/cli_handlers.h                |  4 +-
 multipathd/dmevents.c                    |  2 +-
 multipathd/dmevents.h                    |  6 +-
 multipathd/fpin.h                        |  4 +-
 multipathd/init_unwinder.h               |  4 +-
 multipathd/main.c                        | 36 +++++-----
 multipathd/main.h                        |  6 +-
 multipathd/pidfile.h                     |  4 ++
 multipathd/uxclnt.h                      |  5 ++
 multipathd/uxlsnr.c                      |  6 +-
 multipathd/uxlsnr.h                      |  4 +-
 multipathd/waiter.c                      |  2 +-
 multipathd/waiter.h                      |  6 +-
 tests/alias.c                            | 64 +++++++++++------
 tests/mpathvalid.c                       |  2 +-
 tests/strbuf.c                           | 80 +++++++++++++++++++--
 tests/sysfs.c                            | 20 +++---
 tests/test-lib.c                         |  4 +-
 tests/test-lib.h                         | 20 +++---
 tests/test-log.h                         |  4 +-
 tests/valid.c                            | 16 ++---
 tests/wrap64.h                           |  4 +-
 153 files changed, 981 insertions(+), 853 deletions(-)

-- 
2.46.0





[Index of Archives]     [DM Crypt]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite Discussion]     [KDE Users]     [Fedora Docs]

  Powered by Linux