lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <473B1E4D.40800@schaufler-ca.com>
Date:	Wed, 14 Nov 2007 08:11:57 -0800
From:	Casey Schaufler <casey@...aufler-ca.com>
To:	akpm@...l.org, torvalds@...l.org
Cc:	linux-security-module@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [PATCH] For -mm only - inode_getsecurity rework

From: Casey Schaufler <casey@...aufler-ca.com>

This represents the rework required for changes to inode_getsecurity.
It is relative to smack24rc2v11, which is the version added to -mm,
but subsequently removed because of the change to inode_getsecurity

Signed-off-by: Casey Schaufler <casey@...aufler-ca.com>

---

 security/smack/smack_lsm.c |   12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff -uprN -X linux-2.6.24-rc2-base/Documentation/dontdiff linux-2.6.24-rc2-smack/security/smack/smack_lsm.c linux-2.6.24-rc2-mm1-smack/security/smack/smack_lsm.c
--- linux-2.6.24-rc2-smack/security/smack/smack_lsm.c	2007-11-07 21:35:41.000000000 -0800
+++ linux-2.6.24-rc2-mm1-smack/security/smack/smack_lsm.c	2007-11-12 22:49:16.000000000 -0800
@@ -673,8 +673,8 @@ static int smack_inode_removexattr(struc
  * Returns the size of the attribute or an error code
  */
 static int smack_inode_getsecurity(const struct inode *inode,
-				   const char *name, void *buffer,
-				   size_t size, int err)
+				   const char *name, void **buffer,
+				   bool alloc)
 {
 	struct socket_smack *ssp;
 	struct socket *sock;
@@ -687,9 +687,7 @@ static int smack_inode_getsecurity(const
 	if (strcmp(name, XATTR_SMACK_SUFFIX) == 0) {
 		isp = smk_of_inode(inode);
 		ilen = strlen(isp) + 1;
-		if (ilen > size)
-			return -EINVAL;
-		strncpy(buffer, isp, ilen);
+		*buffer = isp;
 		return ilen;
 	}
 
@@ -714,10 +712,8 @@ static int smack_inode_getsecurity(const
 		return -EOPNOTSUPP;
 
 	ilen = strlen(isp) + 1;
-	if (ilen > size)
-		rc = -EINVAL;
 	if (rc == 0) {
-		strncpy(buffer, isp, ilen);
+		*buffer = isp;
 		rc = ilen;
 	}
 




-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ