diff options
-rw-r--r-- | usr/src/lib/smbsrv/libsmbns/common/smbns_ads.c | 4 | ||||
-rw-r--r-- | usr/src/lib/smbsrv/libsmbns/common/smbns_dyndns.c | 18 |
2 files changed, 12 insertions, 10 deletions
diff --git a/usr/src/lib/smbsrv/libsmbns/common/smbns_ads.c b/usr/src/lib/smbsrv/libsmbns/common/smbns_ads.c index ba0d70aaae..5f797a38aa 100644 --- a/usr/src/lib/smbsrv/libsmbns/common/smbns_ads.c +++ b/usr/src/lib/smbsrv/libsmbns/common/smbns_ads.c @@ -1286,8 +1286,8 @@ smb_ads_getfqhostname(smb_ads_handle_t *ah, char *fqhost, int len) if (smb_gethostname(fqhost, len, SMB_CASE_LOWER) != 0) return (-1); - (void) snprintf(fqhost, len, "%s.%s", fqhost, - ah->domain); + (void) strlcat(fqhost, ".", len); + (void) strlcat(fqhost, ah->domain, len); return (0); } diff --git a/usr/src/lib/smbsrv/libsmbns/common/smbns_dyndns.c b/usr/src/lib/smbsrv/libsmbns/common/smbns_dyndns.c index 2959840a05..ad813ca7f6 100644 --- a/usr/src/lib/smbsrv/libsmbns/common/smbns_dyndns.c +++ b/usr/src/lib/smbsrv/libsmbns/common/smbns_dyndns.c @@ -2026,14 +2026,15 @@ dyndns_update_core(char *fqdn) if (!smb_config_getbool(SMB_CI_DYNDNS_ENABLE)) return (0); - if (smb_gethostname(fqhn, MAXHOSTNAMELEN, SMB_CASE_LOWER) != 0) - return (-1); - /* * To comply with RFC 4120 section 6.2.1, the fully-qualified hostname * must be set to lower case. */ - (void) snprintf(fqhn, MAXHOSTNAMELEN, "%s.%s", fqhn, fqdn); + if (smb_gethostname(fqhn, MAXHOSTNAMELEN, SMB_CASE_LOWER) != 0) + return (-1); + + (void) strlcat(fqhn, ".", MAXHOSTNAMELEN); + (void) strlcat(fqhn, fqdn, MAXHOSTNAMELEN); error = 0; forw_update_ok = 0; @@ -2107,14 +2108,15 @@ dyndns_clear_rev_zone(char *fqdn) if (!smb_config_getbool(SMB_CI_DYNDNS_ENABLE)) return (0); - if (smb_gethostname(fqhn, MAXHOSTNAMELEN, SMB_CASE_LOWER) != 0) - return (-1); - /* * To comply with RFC 4120 section 6.2.1, the fully-qualified hostname * must be set to lower case. */ - (void) snprintf(fqhn, MAXHOSTNAMELEN, "%s.%s", fqhn, fqdn); + if (smb_gethostname(fqhn, MAXHOSTNAMELEN, SMB_CASE_LOWER) != 0) + return (-1); + + (void) strlcat(fqhn, ".", MAXHOSTNAMELEN); + (void) strlcat(fqhn, fqdn, MAXHOSTNAMELEN); error = 0; |