Author: pjd
Date: Wed Jan 22 01:10:23 2020
New Revision: 356962
URL: https://svnweb.freebsd.org/changeset/base/356962

Log:
  MFC r342873:
  
  In r316006 the getstrfromtype_locked() function was modified to return
  an empty string, instead of NULL, if an entry is missing in the audit_control
  file. Because of that change the getachost() function started to return
  success even if the host name was not defined in the audit_control.
  This in turn led to auditd_hostlen always being set (for an empty host it was
  set to 0). If auditd_hostlen was not equal to -1 we were trying to append
  the host name to trail file name. All this led to situation where when host
  name is not defined in audit_control, auditd will create trail files with
  a leading '.', which breaks auditdistd as it doesn't work with longer audit
  trail file names.
  
  Fix this by appending host name to the trail file name only if the host name
  is not empty.
  
  Sponsored by: Fudo Security

Modified:
  stable/12/contrib/openbsm/libauditd/auditd_lib.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/contrib/openbsm/libauditd/auditd_lib.c
==============================================================================
--- stable/12/contrib/openbsm/libauditd/auditd_lib.c    Wed Jan 22 01:08:27 
2020        (r356961)
+++ stable/12/contrib/openbsm/libauditd/auditd_lib.c    Wed Jan 22 01:10:23 
2020        (r356962)
@@ -193,7 +193,7 @@ affixdir(char *name, struct dir_ent *dirent)
        /*
         * If the host is set then also add the hostname to the filename.
         */
-       if (auditd_hostlen != -1)
+       if (auditd_hostlen > 0)
                asprintf(&fn, "%s/%s.%s", dirent->dirname, name, auditd_host);
        else
                asprintf(&fn, "%s/%s", dirent->dirname, name);
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to