summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--usr/src/lib/smbsrv/libsmbns/common/smbns_ads.c4
-rw-r--r--usr/src/lib/smbsrv/libsmbns/common/smbns_dyndns.c18
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;