2021-11-19  Arthur de Jong <arthur@arthurdejong.org>

	* [6e7e878] man/nslcd.conf.5.xml, nslcd/cfg.c: Support DNSLDAPS
	  in uri

	  This supports both `uri DNSLDAPS` and `uri DNSLDAPS:some.domain`
	  variants alongside the pre-existing `uri DNS` that was already
	  supported generating ldaps URIs for all SRV records found.

2021-11-15  Arthur de Jong <arthur@arthurdejong.org>

	* [70819ae] configure.ac, tests/common.h: Fix internal assertion
	  function detection on Solaris

2021-11-15  Arthur de Jong <arthur@arthurdejong.org>

	* [7b2a7fe] INSTALL, ar-lib, compile, depcomp, missing, py-compile,
	  test-driver: Update files from latest automake

2021-11-14  Arthur de Jong <arthur@arthurdejong.org>

	* [9edf95c] tests/test.ldif, tests/test_ldapcmds.sh,
	  tests/test_nsscmds.sh: Do not use user arthur in tests

	  This makes it more complicated to run the tests on an environment
	  where a local user arthur exists.

2021-11-14  Arthur de Jong <arthur@arthurdejong.org>

	* [2862447] pynslcd/mypidfile.py: Fix running pynslcd without
	  uid option

	  Fixes 65695aa

2021-06-04  Ryan Tandy <ryan@nardis.ca>

	* [15f67be] tests/config.ldif, tests/setup_slapd.sh: Support
	  running tests with OpenLDAP 2.5

	  - Change database backend to LMDB - Load external ppolicy schema
	  conditionally

2021-11-03  Arthur de Jong <arthur@arthurdejong.org>

	* [4c46eef] .github/workflows/test.yml: Configure CodeQL code
	  scanning

2021-11-01  Arthur de Jong <arthur@arthurdejong.org>

	* [906035b] man/nslcd.conf.5.xml, nslcd/cfg.c, tests/test_cfg.c:
	  Support an empty search base

	  This allows putting `base ""` in nslcd.conf to specify an empty
	  search base.

	  Note that the LDAP server needs to support this. With slapd this
	  requires setting up an olcDefaultSearchBase attribute in the
	  olcFrontendConfig object under cn=config or have the database
	  have an empty suffix.

	  Closes https://github.com/arthurdejong/nss-pam-ldapd/issues/50

2021-10-17  Arthur de Jong <arthur@arthurdejong.org>

	* [7d81616] common/expr.c, tests/test_expr.c: Support minus
	  character in attribute expressions

	  This requires the attribute name is contained within a ${var-name}
	  expression.

2021-05-25  Arthur de Jong <arthur@arthurdejong.org>

	* [6d5a2eb] nslcd/myldap.c: Retry connecting to the first URI
	  after idle_timelimit

	  This ensures that a connection to the first URI listed in the
	  config file will be re-established once the connection is closed
	  cleanly after the idle time.

	  This ensures that the listed URIs are handled more in a
	  primary/fallback manner if an idle time is configured.

	  Closes https://github.com/arthurdejong/nss-pam-ldapd/issues/46

2021-05-26  Arthur de Jong <arthur@arthurdejong.org>

	* [5226a6f] .github/workflows/test.yml, .travis.yml,
	  tests/setup_slapd.sh, tests/test_nsscmds.sh: Replace Travis with
	  GitHub actions

	  This includes a few tweaks to the test scripts to make debugging
	  easier and to avoid issues on Github action runners.

2021-01-23  Arthur de Jong <arthur@arthurdejong.org>

	* [d9710a2] man/nslcd.conf.5.xml, nslcd/cfg.c: Add tls_reqsan to
	  check certificate SAN

	  This option is passed to the LDAP library if it is supported.

2021-01-23  Arthur de Jong <arthur@arthurdejong.org>

	* [026f08c] man/nslcd.conf.5.xml, nslcd/cfg.c: Add tls_crlfile to
	  check local CRL file

	  This option is passed to the LDAP library if it is supported.

2021-01-18  sebastienblavier
<72022031+sebastienblavier@users.noreply.github.com>

	* [78c00f1] man/nslcd.conf.5.xml, nslcd.conf, nslcd/cfg.c: Add
	  tls_crlcheck to check Certificate Revocation List

	  This option is passed to the LDAP library if it is supported.

	  Closes https://github.com/arthurdejong/nss-pam-ldapd/pull/41

2021-01-17  Arthur de Jong <arthur@arthurdejong.org>

	* [d55bdb2] Makefile.am: Use the provided Python for `make distcheck`

	  This ensures that if a Python interpreter was previously
	  supplied to configure it is also used for subsequent calls to
	  run a distribution check.

2021-01-17  Arthur de Jong <arthur@arthurdejong.org>

	* [b7b812f] ar-lib, compile, depcomp, install-sh, missing,
	  mkinstalldirs, py-compile, test-driver: Update files from
	  latest automake

2020-09-11  Arthur de Jong <arthur@arthurdejong.org>

	* [37a00e9] nslcd/myldap.c: Fix handling of the pam_authc_ppolicy
	  option

	  Check the result of the BIND operation instead of that of the
	  ldap_result() call when pam_authc_ppolicy is set to "no".

	  This could have resulted in successful authentication if the BIND
	  operation to the LDAP server timed out and pam_authc_ppolicy was
	  set to "no" but should not result in successful authentication
	  otherwise so it is unlikely that setting pam_authc_ppolicy to
	  "no" ever worked as intended. The timeout also would have to
	  occur on the BIND operation, not on setting up the connection.

	  Fixes 31cd2cf

2020-04-19  Arthur de Jong <arthur@arthurdejong.org>

	* [18740fb] README: Fix typo

	  Thanks Filip Dvorak

	  See https://bugzilla.redhat.com/show_bug.cgi?id=1825240

2020-02-10  Arthur de Jong <arthur@arthurdejong.org>

	* [b335518] man/nslcd.conf.5.xml: Fix typo in manual page

	  Thanks Benedict Reuschling for pointing this out.

	  Closes https://github.com/arthurdejong/nss-pam-ldapd/issues/39
	  Fixes b93838d

2019-11-11  Arthur de Jong <arthur@arthurdejong.org>

	* [548efe5] nslcd/myldap.c: Log the correct timeout value

	  This fixes logging of the LDAP_OPT_TIMEOUT,
	  LDAP_OPT_NETWORK_TIMEOUT and LDAP_X_OPT_CONNECT_TIMEOUT options
	  to actually log the value of the bind_timelimit option instead
	  of the timelimit option.

2019-10-13  Arthur de Jong <arthur@arthurdejong.org>

	* [fea0f5e] pynslcd/cfg.py, pynslcd/pam.py: Add pam_authc_ppolicy
	  support in pynslcd

	  See https://bugs.debian.org/900253

2019-10-13  Arthur de Jong <arthur@arthurdejong.org>

	* [1025d5d] utils/chsh.py, utils/shells.py: Fix Python 3
	  compatibility in chsh.ldap

2019-10-06  Arthur de Jong <arthur@arthurdejong.org>

	* [c4daf27] AUTHORS, ChangeLog, NEWS, configure.ac,
	  man/chsh.ldap.1.xml, man/getent.ldap.1.xml, man/nslcd.8.xml,
	  man/nslcd.conf.5.xml, man/pam_ldap.8.xml, man/pynslcd.8.xml,
	  nslcd/nslcd.c, utils/cmdline.py: Get files ready for 0.9.11 release

2019-10-06  Arthur de Jong <arthur@arthurdejong.org>

	* [69922e3] tests/test_doctest.sh: Fix Python interpreter detection
	  in tests

	  Fixes 644bc62

2019-10-06  Arthur de Jong <arthur@arthurdejong.org>

	* [62522b9] tests/test_nsscmds.sh: Portability improvements to
	  test suite

	  Some test systems have more local users and some systems prefer
	  IPv4 addresses over IPv6 addresses.

2019-09-17  Arthur de Jong <arthur@arthurdejong.org>

	* [a8f4ed8] NEWS, common/expr.c, common/nslcd-prot.c,
	  common/nslcd-prot.h, common/tio.c, compat/attrs.h, compat/ether.c,
	  compat/getopt_long.c, compat/getopt_long.h, compat/getpeercred.h,
	  compat/nss_compat.h, configure.ac, man/nslcd.conf.5.xml,
	  nslcd.h, nslcd/attmap.h, nslcd/common.h, nslcd/daemonize.h,
	  nslcd/invalidator.c, nslcd/myldap.c, nslcd/myldap.h, nslcd/pam.c,
	  nslcd/passwd.c, nss/common.h, nss/hosts.c, nss/prototypes.h,
	  pam/common.h, tests/common.h, tests/test_pynslcd_cache.py,
	  tests/test_tio.c, utils/getent.py: Various spelling fixes

2019-09-10  Arthur de Jong <arthur@arthurdejong.org>

	* [644bc62] .travis.yml, tests/test_doctest.sh: Fix Python
	  interpreter detection

	  Apparently some environments provide certain Python executables
	  which are not working Python interpreters.

2019-09-08  Arthur de Jong <arthur@arthurdejong.org>

	* [768c4be] .gitignore, Makefile.am: Remove confinc.out which is
	  left behind by aclocal.m4

2019-09-08  Arthur de Jong <arthur@arthurdejong.org>

	* [0252b05] pynslcd/shadow.py: Correctly validate shadow requests
	  and responses

2019-09-08  Arthur de Jong <arthur@arthurdejong.org>

	* [cd887ef] pynslcd/Makefile.am, utils/Makefile.am: Update Python
	  interpreter in installed scripts

	  Ensure that the Python interpreter that is passed to configure
	  ends up in the shebang of the Python scripts.

	  This allows one to pass PYTHON=python3 to configure to install
	  the scripts using the Python 3 interpreter.

2019-09-07  Arthur de Jong <arthur@arthurdejong.org>

	* [d717795] .gitignore, pynslcd/alias.py,
	  pynslcd/attmap.py, pynslcd/cache.py, pynslcd/cfg.py,
	  pynslcd/common.py, pynslcd/ether.py, pynslcd/expr.py,
	  pynslcd/group.py, pynslcd/host.py, pynslcd/invalidator.py,
	  pynslcd/mypidfile.py, pynslcd/netgroup.py, pynslcd/network.py,
	  pynslcd/pam.py, pynslcd/passwd.py, pynslcd/protocol.py,
	  pynslcd/pynslcd.py, pynslcd/rpc.py, pynslcd/search.py,
	  pynslcd/service.py, pynslcd/shadow.py, pynslcd/tio.py,
	  tests/Makefile.am, tests/flake8.ini, tests/test_flake8.sh,
	  tests/test_pynslcd_cache.py, utils/chsh.py, utils/getent.py,
	  utils/nslcd.py, utils/users.py: Improve Python code style

	  This also adds a flake8 test that checks code style. Note that
	  this test is not run by default because it requires network
	  access to create the virtualenv with the test software.

2019-09-02  Arthur de Jong <arthur@arthurdejong.org>

	* [221ce5a] configure.ac, pynslcd/Makefile.am, pynslcd/attmap.py,
	  pynslcd/cache.py, pynslcd/cfg.py, pynslcd/common.py,
	  pynslcd/expr.py, pynslcd/invalidator.py, pynslcd/mypidfile.py,
	  pynslcd/pam.py, pynslcd/pynslcd.py, pynslcd/search.py,
	  pynslcd/tio.py, pynslcd/usermod.py, tests/Makefile.am,
	  tests/test_doctest.sh, tests/test_ldapcmds.sh,
	  tests/test_pycompile.sh, tests/test_pylint.sh,
	  tests/test_pynslcd_cache.py, utils/Makefile.am, utils/getent.py,
	  utils/nslcd.py: Add Python 3 support

	  This ensures that both pynslcd and the command-line utilities
	  work with Python3 as interpreter and runs some tests with all
	  installed Python interpreters.

	  This drops support for Python 2.6 and extends 5a84be2 to perform
	  more testing with Python 3.

2018-09-08  Arthur de Jong <arthur@arthurdejong.org>

	* [06ee886] nslcd/nslcd.c: Avoid logging unknown socket peer
	  information

	  This avoids logging the client PID when the underlying socker
	  layer cannot provide the relevant information.

2018-09-05  Mizunashi Mana <mizunashi-mana@noreply.git>

	* [bfcf002] utils/shells.py: Fix crash in chsh.ldap

	  Specify result type of getusershell.

	  Closes https://github.com/arthurdejong/nss-pam-ldapd/pull/31

2018-09-01  Arthur de Jong <arthur@arthurdejong.org>

	* [bfe0696] AUTHORS, ChangeLog, NEWS, configure.ac,
	  man/chsh.ldap.1.xml, man/getent.ldap.1.xml, man/nslcd.8.xml,
	  man/nslcd.conf.5.xml, man/pam_ldap.8.xml, man/pynslcd.8.xml:
	  Get files ready for 0.9.10 release

2018-09-01  Arthur de Jong <arthur@arthurdejong.org>

	* [acc450e] ar-lib, compile, config.guess, config.sub, depcomp,
	  install-sh, missing, mkinstalldirs, py-compile, test-driver:
	  Update files from latest automake

2018-02-06  HWLin <hwlin1414@gmail.com>

	* [d5a25cf] configure.ac, nss/bsdnss.c: Add FreeBSD netgroup support

	  Closes: https://github.com/arthurdejong/nss-pam-ldapd/pull/29

2018-08-06  Arthur de Jong <arthur@arthurdejong.org>

	* [d8b1640] nslcd/myldap.c, nslcd/pam.c: Make password expiry
	  messages correct and consistent

	  Thanks to Têko Mihinto.  See
	  https://bugzilla.redhat.com/show_bug.cgi?id=1612543

2018-07-21  Arthur de Jong <arthur@arthurdejong.org>

	* [84676ab] man/nslcd.conf.5.xml, nslcd/cfg.c, nslcd/pam.c: Add
	  domain variable for use in pam_authz_search

	  This adds a domain variable (if it can be determined on the
	  system) that can be used in pam_authz_search and pam_authc_search
	  filters to build search filters that search on the domain name
	  (the FQDN without the starting host name).

	  Closes https://github.com/arthurdejong/nss-pam-ldapd/issues/8

2018-07-21  Arthur de Jong <arthur@arthurdejong.org>

	* [9fbcdd1] .travis.yml, tests/debian-pam-config, tests/testenv.sh:
	  Add a Travis configuration file

	  This ensures that the integration tests can be successfully run. It
	  configures a slapd instance with the test database, configures
	  the system to use LDAP authentication and runs the tests.

2018-07-21  Arthur de Jong <arthur@arthurdejong.org>

	* [2a468fd] nslcd/log.c: Allow logging longer lines

	  This increases the buffer that holds log messages so longer
	  messages can be logged.

	  Closes https://github.com/arthurdejong/nss-pam-ldapd/issues/26

2018-07-21  Arthur de Jong <arthur@arthurdejong.org>

	* [3760b43] nslcd/nslcd.c: Create /var/run/nslcd/socket after
	  dropping privileges

	  This is needed to avoid a problem where a call to initgroups()
	  can result in NSS lookups. If nscd is configured the mechanism
	  to avoid loopback lookups using nss_ldap_enablelookups will not
	  work and cause for delays on start-up.

	  Note that this changes ownership of the socket to the user
	  running nslcd.

2018-02-18  Arthur de Jong <arthur@arthurdejong.org>

	* [fe26b94] ChangeLog, NEWS, README, configure.ac,
	  man/chsh.ldap.1.xml, man/getent.ldap.1.xml, man/nslcd.8.xml,
	  man/nslcd.conf.5.xml, man/pam_ldap.8.xml, man/pynslcd.8.xml:
	  Get files ready for 0.9.9 release

2018-02-18  Arthur de Jong <arthur@arthurdejong.org>

	* [382b6ea] INSTALL, ar-lib, config.guess, config.sub, depcomp,
	  py-compile: Update files from latest automake

2018-02-17  Arthur de Jong <arthur@arthurdejong.org>

	* [e8a4705] tests/test_pylint.sh: Fix running pylint on distcheck

	  This sets PYTHONPATH so that both the source and build directories
	  are used to find constants.py.

2018-02-17  Arthur de Jong <arthur@arthurdejong.org>

	* [9a50971] common/expr.c, compat/attrs.h: Mark case blocks without
	  break statement

	  This avoids a gcc warning in non-empty case blocks without a
	  break statement by explicitly marking those blocks.

2018-02-16  Arthur de Jong <arthur@arthurdejong.org>

	* [c05e326] nslcd/cfg.c, nslcd/common.h: Increase size of hostname
	  buffer

	  This increases the host name buffer to support host names (that
	  include FQDNs) to 255 characters and removes the reliance on
	  HOST_NAME_MAX and _POSIX_HOST_NAME_MAX which may be smaller in
	  some situations.

	  Closes https://github.com/arthurdejong/nss-pam-ldapd/issues/22

2017-12-23  Arthur de Jong <arthur@arthurdejong.org>

	* [9760dce] nslcd/cfg.c: Increase size of config file token

	  This increases the maximum size of tokens that are read from
	  the nslcd.conf configuration file to 256 characters. This was
	  a problem for some very long uri values.

	  Closes https://github.com/arthurdejong/nss-pam-ldapd/issues/21

2017-10-13  Arthur de Jong <arthur@arthurdejong.org>

	* [8f76d24] nslcd/cfg.c, tests/test_cfg.c: Support spaces in
	  attribute mapping expressions

2017-06-26  Arthur de Jong <arthur@arthurdejong.org>

	* [47fd03b] AUTHORS, ChangeLog, NEWS, configure.ac,
	  man/chsh.ldap.1.xml, man/getent.ldap.1.xml, man/nslcd.8.xml,
	  man/nslcd.conf.5.xml, man/pam_ldap.8.xml, man/pynslcd.8.xml,
	  nslcd/nslcd.c, pynslcd/pynslcd.py, utils/cmdline.py: Get files
	  ready for 0.9.8 release

2017-06-25  Arthur de Jong <arthur@arthurdejong.org>

	* [7920d85] tests/test_ldapcmds.sh, tests/test_nsscmds.sh: Ignore
	  password hashes in consistent manner

	  This changes the getent and getent.ldap tests to ignore password
	  hashes that may be present in shadow lookups in a consistent
	  manner.

	  This also adds minor compatibility improvements.

2017-06-25  Arthur de Jong <arthur@arthurdejong.org>

	* [65695aa] pynslcd/cfg.py, pynslcd/mypidfile.py, pynslcd/pynslcd.py:
	  Create pidfile directory in pynslcd

	  This ensures that /var/run/nslcd is created (when it does not
	  exist) when starting pynslcd.

2017-06-25  Arthur de Jong <arthur@arthurdejong.org>

	* [419aab2] pynslcd/cfg.py, pynslcd/group.py, pynslcd/passwd.py:
	  Add nss_uid_offset and nss_gid_offset to pynslcd

2017-03-20  Seth Wright <seth@crosse.org>

	* [5103173] man/nslcd.conf.5.xml, nslcd/cfg.c, nslcd/cfg.h,
	  nslcd/group.c, nslcd/passwd.c: Add the ability to offset UID
	  and GID numbers

2017-06-18  Arthur de Jong <arthur@arthurdejong.org>

	* [fee74d9] tests/Makefile.am, tests/test_ldapcmds.sh: Portability
	  improvements to test_ldapcmds.sh

	  This fixes an issue with the export statement in POSIX shell
	  scripts, ensures that the commands in the output match those
	  in the script, strips password hashes for shadow lookups (for
	  systems without PAM where these are exposed) and only runs the
	  tests if we enabled the utils.

	  Fixes 246a1f3.

2017-06-17  Arthur de Jong <arthur@arthurdejong.org>

	* [5126b26] nslcd/ether.c: Use uint8_t instead of u_int8_t

	  The former seems to be available on more platforms than the latter.

	  Fixes be26510.

2017-06-17  Arthur de Jong <arthur@arthurdejong.org>

	* [fe3772f] compat/pam_compat.h: Fix HAVE_DECL_PAM_ERROR usage

	  The macro is supposed to be defined to 0 (instead of undefined)
	  if pam_info() and pam_error() are not found.

	  Fixes 3d5ab89.

2017-06-17  Arthur de Jong <arthur@arthurdejong.org>

	* [ca62f59] nslcd/shadow.c: Also filter shadow entries by validnames

2017-06-17  Arthur de Jong <arthur@arthurdejong.org>

	* [e68b85a] nslcd/passwd.c, nslcd/shadow.c: Fix and clarify a
	  few comments

2017-06-16  Arthur de Jong <arthur@arthurdejong.org>

	* [3d5ab89] compat/pam_compat.h, configure.ac: Fix pam_info()
	  and pam_error() replacement

	  On FreeBSD these are functions while on Linux they are macros
	  causing them to be incorrectly replaced on FreeBSD. This resulted
	  in a crash of the PAM module when e.g. presenting messages about
	  password expiry.

2017-06-16  Arthur de Jong <arthur@arthurdejong.org>

	* [b5d1dd2] tests/Makefile.am: Clean log from test_pamcmds.expect

	  This removes test_pamcmds.log that is generated by
	  test_pamcmds.expect when running the test suite. This avoids an
	  error in the distcheck target.

2017-06-16  Arthur de Jong <arthur@arthurdejong.org>

	* [246a1f3] tests/test_ldapcmds.sh: Fix running test_ldapcmds.sh
	  during distcheck

	  This ensures that Python can find both getent.py (from source
	  directory) and constants.py (from build directory) when running
	  the tests from the distcheck target.

	  This also makes the script more similar to test_nsscmds.sh.

	  Fixes 9c803d7.

2017-06-15  Arthur de Jong <arthur@arthurdejong.org>

	* [43862ba] : Add pam_authc_search option

	  This option can be used to configure the search operation that
	  should be performed after authentication.

2017-06-15  Arthur de Jong <arthur@arthurdejong.org>

	* [5141b09] man/nslcd.conf.5.xml, nslcd/pam.c: Allow skipping
	  post-authentication search altogether

2017-06-14  Arthur de Jong <arthur@arthurdejong.org>

	* [0cafb08] nslcd/myldap.c, nslcd/myldap.h, nslcd/pam.c,
	  nslcd/usermod.c: Implement myldap_bind() function

	  This function integrates the myldap_set_credentials() and
	  myldap_get_policy_response() and performs the bind operation
	  witout actually performing a search.

	  The function performs a "fake" search that returns after performing
	  the LDAP BIND operation.

	  This replaces a number of dummy search operations that were there
	  to ensure that the connection was open. This allows us to skip
	  the search operation after authentication.

2017-06-14  Arthur de Jong <arthur@arthurdejong.org>

	* [9564dd0] nslcd/pam.c: Implement handling of pam_authc_search
	  option

	  This allows performing a different, configurable search from
	  the default BASE search after the BIND operation.

2017-06-14  Arthur de Jong <arthur@arthurdejong.org>

	* [f72aaa2] man/nslcd.conf.5.xml: Document pam_authc_search option

2017-06-14  Arthur de Jong <arthur@arthurdejong.org>

	* [5d11cb8] nslcd/cfg.c, nslcd/cfg.h, nslcd/pam.c: Add
	  pam_authc_search option parsing

2017-06-14  Arthur de Jong <arthur@arthurdejong.org>

	* [bcc3a08] nslcd/pam.c, pynslcd/pam.py: Reorganise PAM search
	  var building functions

	  This moves the autzsearch_var_add(), autzsearch_vars_free(),
	  autzsearch_var_get() and do_autzsearches() functions to the top of
	  the file using more generic names and introduces search_vars_new()
	  in prepartion of other similar searches.

	  This also renames the remaining authzsearch functions to
	  authz_search to be consistent with the pam_authz_search option.

2017-06-13  Arthur de Jong <arthur@arthurdejong.org>

	* [ebc0f76] README, configure.ac, tests/test.ldif: Switch to
	  HTTPS URLs

2017-06-13  Arthur de Jong <arthur@arthurdejong.org>

	* [be26510] compat/ether.c, compat/ether.h, configure.ac,
	  nslcd/ether.c, pynslcd/ether.py: Query ethernet addresses in
	  compact and long format

	  This ensures that when querying the address 0:18:8a:54:1a:8b
	  both that format and 00:18:8a:54:1a:8b is searched for in LDAP.

	  This was triggerred by the fact that ether_ntoa() on FreeBSD
	  returns the long format while glibc uses the compact format.

	  Since we are no longer using the libc version of ether_ntoa() we
	  can also drop the compatibility implementation of ether_ntoa_r().

2017-06-07  Arthur de Jong <arthur@arthurdejong.org>

	* [becc883] nslcd/passwd.c: Log entries and lookups failing
	  nss_min_uid

	  This logs (at debug level) any LDAP uidNumber attribute values
	  (or translated objectSid attribute values) that are lower than
	  nss_min_uid.	It also logs getpwuid() requests for such uids.

2017-06-04  Arthur de Jong <arthur@arthurdejong.org>

	* [5a84be2] utils/chsh.py, utils/cmdline.py, utils/getent.py,
	  utils/nslcd.py, utils/shells.py, utils/users.py: Make nslcd-utils
	  Python 3 compatible

	  This changes the getent.ldap and chsh.ldap commands to be
	  compatible with Python 2 and Python 3 with the same code.

	  This does switch to raw I/O because Python 3 does not support
	  bufferred I/O on sockets.

2017-06-04  Arthur de Jong <arthur@arthurdejong.org>

	* [9c803d7] tests/Makefile.am, tests/test_ldapcmds.sh,
	  tests/test_nsscmds.sh, tests/testenv.sh: Add tests for getent.ldap
	  command

	  This more or less duplicates the tests from test_nsscmds.sh to
	  test_ldapcmds.sh with some modifications for the differences
	  in output.

	  This also extends the test_nsscmds.sh tests to handle the case
	  where shadow lookups do not go through LDAP.

2017-06-04  Arthur de Jong <arthur@arthurdejong.org>

	* [a357131] utils/getent.py: Fix output of getent.ldap networks

	  Contrary to the hosts output the network name is listed first.

2017-06-03  Arthur de Jong <arthur@arthurdejong.org>

	* [58c7a94] utils/getent.py: Fix IPv6 lookups in getent.ldap

2017-06-03  Arthur de Jong <arthur@arthurdejong.org>

	* [5173e55] man/getent.ldap.1.xml, utils/getent.py: Accept multiple
	  key arguments to getent.ldap

	  This allows supplying multiple arguments to getent.ldap that
	  will each act as a search key for lookups, similar to what normal
	  getent allows.

2017-02-07  Arthur de Jong <arthur@arthurdejong.org>

	* [53f797b] nslcd/nslcd.c: Exit with 0 when stopping nslcd

	  When receiving a signal this will result in nslcd returning with
	  a success exit code.

	  Thanks Stanislav Moravec for pointing this out.

2016-09-04  Arthur de Jong <arthur@arthurdejong.org>

	* [c12cd14] nslcd/nslcd.c: Remove duplicate break statement

2016-09-04  Arthur de Jong <arthur@arthurdejong.org>

	* [d8ad7b1] nslcd/myldap.c: Do not try all LDAP servers on failed
	  authentication

	  See https://bugs.launchpad.net/bugs/1618190

2016-08-30  Arthur de Jong <arthur@arthurdejong.org>

	* [a3da150] utils/nslcd.py: Replace Python assertions with exceptions

	  The assertions can be optimised out when compiling the modules
	  with -O which would break the protocol handling. This ensures
	  that errors are properly handled even if optimisation is enabled.

	  Thanks Yu-Chun Huang for reporting this.
	  https://github.com/arthurdejong/nss-pam-ldapd/issues/14

2016-08-14  Arthur de Jong <arthur@arthurdejong.org>

	* [c286bb5] AUTHORS, ChangeLog, NEWS, README, configure.ac,
	  man/chsh.ldap.1.xml, man/getent.ldap.1.xml, man/nslcd.8.xml,
	  man/nslcd.conf.5.xml, man/pam_ldap.8.xml, man/pynslcd.8.xml,
	  nslcd/nslcd.c, pynslcd/pynslcd.py, utils/cmdline.py: Get files
	  ready for 0.9.7 release

2016-08-14  Arthur de Jong <arthur@arthurdejong.org>

	* [db9494e] tests/Makefile.am: Only run doctests when building
	  pynslcd

2016-08-14  Arthur de Jong <arthur@arthurdejong.org>

	* [cb16e4c] nss/bsdnss.c: Avoid some warnings on FreeBSD

	  This adds casts to and from void * for the function pointers
	  that are passed around.

2016-07-27  Arthur de Jong <arthur@arthurdejong.org>

	* [b7a0b23] ChangeLog, ChangeLog-2013, Makefile.am: Archive 2013
	  ChangeLog entries

2016-07-27  Arthur de Jong <arthur@arthurdejong.org>

	* [e4df12c] config.guess, config.sub, install-sh: Update files
	  from latest automake

2016-07-27  Arthur de Jong <arthur@arthurdejong.org>

	* [db8034a] man/Makefile.am, utils/Makefile.am, utils/getent.py:
	  Also use module-name in utilities and man pages

	  This ensures that getent.ldap, chsh.ldap and manual pages with
	  ldap in the name will be installed with the name as specified
	  with --with-module-name.

	  Note that the manual page content still describes the working
	  within nss-pam-ldapd and still mention the ldap name.

2016-06-04  Arthur de Jong <arthur@arthurdejong.org>

	* [281b0ec] tests/test_doctest.sh: Ensure doctest also run in
	  distcheck

	  This fixes test_doctest.sh to also work when the build directory
	  is different from the source directory. This is needed because
	  constants.py is only available in the build directory.

2016-06-03  Arthur de Jong <arthur@arthurdejong.org>

	* [a89eda7] nslcd/pam.c: Also honor ignorecase in PAM

	  This avoids changing the cannonical username to the value as
	  specified in LDAP when ignorecase is used.

	  See https://github.com/arthurdejong/nss-pam-ldapd/issues/12

2016-06-03  Arthur de Jong <arthur@arthurdejong.org>

	* [7eb1d69] pynslcd/expr.py: Support ${var:offset:length} in pynslcd

2016-06-02  Arthur de Jong <arthur@arthurdejong.org>

	* [c90a537] pynslcd/attmap.py: Fix pynslcd expression representation

	  The problem was that the ExpressionMapping string value did not
	  include the quotes which will cause problems when printing the
	  expression (e.g.  when logging or dumping config, etc.).

2016-06-02  Arthur de Jong <arthur@arthurdejong.org>

	* [fd61bb6] tests/Makefile.am, tests/test_doctest.sh: Add test
	  for running doctests

2016-05-30  Giovanni Mascellani <mascellani@poisson.phc.unipi.it>

	* [2ba9560] common/expr.c, man/nslcd.conf.5.xml, tests/test_expr.c:
	  Support substituting expresions of type ${var:offset:length}

2016-05-30  Giovanni Mascellani <mascellani@poisson.phc.unipi.it>

	* [3a4860c] man/nslcd.conf.5.xml: Fix small typo

2016-05-24  Arthur de Jong <arthur@arthurdejong.org>

	* [917ded7] common/expr.c: Refactor out expression parsing to
	  functions

	  This moves the parsing of the various ${var...} expressions to
	  separate functions so they can be extended more easily.

2016-02-22  Arthur de Jong <arthur@arthurdejong.org>

	* [4be9c59] pam/pam.c: Fix logic error

	  This could result in a free(NULL) call. This code path can
	  only be triggered if pam_ldap changes the logged-in username
	  (introduced in 6a74d8d).

	  Thanks 依云, see
	  https://github.com/arthurdejong/nss-pam-ldapd/issues/11

2016-01-30  Mathieu Baeumler <mathieu.baeumler@gmail.com>

	* [985aec3] nslcd/myldap.c: Display human readable expiry message

	  Display a human readable message (days+hours, or hours+minutes,
	  or seconds) when the password expiring warning is issued.

2016-02-13  Arthur de Jong <arthur@arthurdejong.org>

	* [b795f6c] nslcd/cfg.c: Fix nss_disable_enumeration configuration

	  This fixes a copy-paste bug where nss_disable_enumeration was
	  incorrectly handled. Fixes c0366d8.

	  Thanks Andrew W Elble for pointing this out.

2016-01-18  Arthur de Jong <arthur@arthurdejong.org>

	* [525c996] tests/test.ldif, tests/test_nsscmds.sh: Add a few
	  IPv6 tests

	  This adds a few test hosts that have IPv6 addresses. This
	  ensures that we have an IPv6-only host and hosts which have
	  address values in different order in the ipHostNumber attribute
	  (although attribute order is probably not guaranteed).

2015-10-18  Mathieu Baeumler <mathieu.baeumler@gmail.com>

	* [31cd2cf] man/nslcd.conf.5.xml, nslcd/cfg.c, nslcd/cfg.h,
	  nslcd/myldap.c: Add pam_authc_ppolicy option

	  This option allows completely disabling ppolicy handling.

2016-01-06  Arthur de Jong <arthur@arthurdejong.org>

	* [117c9cb] nslcd/pam.c: Fix error handling on credential change

	  This fixes setting the correct LDAP error code and also fixes
	  formatting in 027df03.

2015-12-23  Vasilis Tsiligiannis <vasilis.tsiligiannis@nokia.com>

	* [027df03] nslcd/pam.c: Fix updating of 'shadowLastChange'
	  attribute when chasing referrals

	  This fixes a bug where 'shadowLastChange' attribute cannot be
	  updated when chasing a referral. After a password is succesfully
	  changed, the credentials for binding should also be updated with
	  the new password for the session.

	  Signed-off-by: Vasilis Tsiligiannis
	  <vasilis.tsiligiannis@nokia.com>

2015-11-13  Arthur de Jong <arthur@arthurdejong.org>

	* [fcea92d] nslcd/cfg.c: Correct file readability check

	  This uses access() instead of stat() to see if the file is
	  readable by the current process. This fixes f089e01.

2015-09-20  Arthur de Jong <arthur@arthurdejong.org>

	* [c879485] nslcd/myldap.c: Fail-over and retry on more errors

	  Also try to fail over to another LDAP server on a larger number
	  of errors. Specifically errors that point to problems connecting
	  to the LDAP server.

2015-08-29  Arthur de Jong <arthur@arthurdejong.org>

	* [3d09e28] nslcd/myldap.c: Open connection before do_try_search()

	  This is in preparation for splitting the BIND from the search
	  phase for authentication.

2015-08-27  Arthur de Jong <arthur@arthurdejong.org>

	* [f089e01] nslcd/cfg.c: Loosen up file existence check

	  This changes the check (for configuration options that specify
	  file names) to just check that the specified path is readable
	  instead of ensisting that it points to a file.

	  This allows tls_randfile to point to /dev/urandom (a character
	  device) or a pipe. This fixes 6779a51.

	  This also applies the same check to the krb5_ccname option.

	  Thanks to Patrick McLean for pointing this out.

2015-08-14  Arthur de Jong <arthur@arthurdejong.org>

	* [309f127] pam/pam.c: Have PAM module log messages to syslog

	  This logs informational messages that are presented to the user
	  tot syslog. This normally includes password expiry and grace
	  login information which may be useful to log.

2015-08-14  Arthur de Jong <arthur@arthurdejong.org>

	* [263a443] nslcd/myldap.c: Simplify password policy message handling

	  This simplifies the check for overwriging pending password
	  expiry and grace logins warnigns and updates handling of the
	  LDAP_CONTROL_PWEXPIRING control to be consistent with that of
	  the expire value of LDAP_CONTROL_PASSWORDPOLICYRESPONSE.

	  This also corrects the function name, also logs empty password
	  policy responses in debug mode and documents the meaning of the
	  various password policy values.

2015-07-09  Mathieu Baeumler <mathieu.baeumler@gmail.com>

	* [4302901] nslcd/myldap.c: Fix password policy expiration warnings

	  If a password expiration warning (pwdExpireWarning) is set in
	  slapd, and the password is about to expire, slapd sends the
	  timeBeforeExpiration value as part of the passwordPolicyResponse.

	  nslcd would incorrectly instruct the PAM module to require
	  immediate password change. This has been fixed for both
	  timeBeforeExpiration and graceLoginsRemaining.

2015-07-19  Arthur de Jong <arthur@arthurdejong.org>

	* [89b471b] ar-lib, autogen.sh, compile, configure.ac, depcomp,
	  install-sh, missing, py-compile, test-driver: Update files from
	  automake 1.15

	  This also includes the m4 directory when invoking aclocal because
	  not all versions seem to handle AC_CONFIG_MACRO_DIR.

2015-07-19  Arthur de Jong <arthur@arthurdejong.org>

	* [86a4618] m4/ax_tls.m4: Disable quoting in AX_TLS notfound case

	  This ensures that AS_IF does not generate an empty else clause
	  which will result in an invalid configure script.

2015-07-19  Arthur de Jong <arthur@arthurdejong.org>

	* [6779a51] nslcd/cfg.c: Check file existence for configuration
	  options

	  This adds addition checks to the tls_cacertdir, tls_cacertfile,
	  tls_randfile, tls_cert and tls_key options to ensure that they
	  point to an existing file when parsing nslcd.conf.

2015-07-19  Arthur de Jong <arthur@arthurdejong.org>

	* [a6c7c63] pynslcd/pynslcd.py: Work around bug in python-daemon

	  See https://bugs.debian.org/792871

2015-07-08  Arthur de Jong <arthur@arthurdejong.org>

	* [c32e8c0] m4/ax_pthread.m4, m4/ax_tls.m4: Update macros from
	  autoconf-archive

2015-06-14  Arthur de Jong <arthur@arthurdejong.org>

	* [d949bd4] AUTHORS, ChangeLog, NEWS, configure.ac,
	  man/chsh.ldap.1.xml, man/getent.ldap.1.xml, man/nslcd.8.xml,
	  man/nslcd.conf.5.xml, man/pam_ldap.8.xml, man/pynslcd.8.xml:
	  Get files ready for 0.9.6 release

2015-06-14  Arthur de Jong <arthur@arthurdejong.org>

	* [4236dd6] Makefile.am: Correctly insert emtpy lines in ChangeLog

2015-06-13  Arthur de Jong <arthur@arthurdejong.org>

	* [e916a2b] man/nslcd.conf.5.xml: Manual page improvements

2015-06-13  Arthur de Jong <arthur@arthurdejong.org>

	* [9a7921f] nslcd/common.c, nslcd/common.h: Also fix signed integer
	  bug in binsid2id()

	  This should have been part of d217632.

2015-06-11  Geoffrey McRae <gnif@xbmc.org>

	* [d217632] nslcd/common.c: Fixed signed 32bit overflow bug on
	  32bit systems

2015-05-23  Jed Liu <jed-nss-pam-ldapd-users@uma.litech.org>

	* [3add5f0] nslcd/cfg.c: Allow configuration values longer than
	  63 characters

2015-03-06  Arthur de Jong <arthur@arthurdejong.org>

	* [d58fba9] nss/netgroup.c: Provide innetgr function on Solaris

	  This implements a function in the Solaris version of the NSS module
	  to check if a specifc netgroup triplet is part of a netgroup.

	  This also avoids a compiler warning and includes improvements
[--snip--]
