Author: mm
Date: Thu Sep  6 13:43:48 2012
New Revision: 240162
URL: http://svn.freebsd.org/changeset/base/240162

Log:
  Make r230454 more readable and vendor-like.
  
  PR:           kern/171380
  MFC after:    3 days

Modified:
  head/sys/cddl/compat/opensolaris/sys/sid.h

Modified: head/sys/cddl/compat/opensolaris/sys/sid.h
==============================================================================
--- head/sys/cddl/compat/opensolaris/sys/sid.h  Thu Sep  6 10:10:56 2012        
(r240161)
+++ head/sys/cddl/compat/opensolaris/sys/sid.h  Thu Sep  6 13:43:48 2012        
(r240162)
@@ -30,7 +30,8 @@
 #define        _OPENSOLARIS_SYS_SID_H_
 
 typedef struct ksiddomain {
-       char    kd_name[1];     /* Domain part of SID */
+       char    *kd_name;       /* Domain part of SID */
+       uint_t  kd_len;
 } ksiddomain_t;
 typedef void   ksid_t;
 
@@ -38,8 +39,12 @@ static __inline ksiddomain_t *
 ksid_lookupdomain(const char *domain)
 {
        ksiddomain_t *kd;
+       size_t len;
 
-       kd = kmem_alloc(sizeof(*kd) + strlen(domain), KM_SLEEP);
+       len = strlen(domain) + 1;
+       kd = kmem_alloc(sizeof(*kd), KM_SLEEP);
+       kd->kd_len = (uint_t)len;
+       kd->kd_name = kmem_alloc(len, KM_SLEEP);
        strcpy(kd->kd_name, domain);
        return (kd);
 }
@@ -48,6 +53,7 @@ static __inline void
 ksiddomain_rele(ksiddomain_t *kd)
 {
 
+       kmem_free(kd->kd_name, kd->kd_len);
        kmem_free(kd, sizeof(*kd));
 }
 
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"

Reply via email to