Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Jul 2015 23:18:04 +0000 (UTC)
From:      Sergey Kandaurov <pluknet@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r285829 - head/sys/kern
Message-ID:  <201507232318.t6NNI4QG016985@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: pluknet
Date: Thu Jul 23 23:18:03 2015
New Revision: 285829
URL: https://svnweb.freebsd.org/changeset/base/285829

Log:
  Call ksem_get() with initialized 'rights'.
  
  ksem_get() consumes fget(), and it's mandatory there.
  
  Reported by:	truckman
  Reviewed by:	mjg

Modified:
  head/sys/kern/uipc_sem.c

Modified: head/sys/kern/uipc_sem.c
==============================================================================
--- head/sys/kern/uipc_sem.c	Thu Jul 23 20:59:48 2015	(r285828)
+++ head/sys/kern/uipc_sem.c	Thu Jul 23 23:18:03 2015	(r285829)
@@ -651,12 +651,13 @@ struct ksem_close_args {
 int
 sys_ksem_close(struct thread *td, struct ksem_close_args *uap)
 {
+	cap_rights_t rights;
 	struct ksem *ks;
 	struct file *fp;
 	int error;
 
 	/* No capability rights required to close a semaphore. */
-	error = ksem_get(td, uap->id, 0, &fp);
+	error = ksem_get(td, uap->id, cap_rights_init(&rights), &fp);
 	if (error)
 		return (error);
 	ks = fp->f_data;
@@ -872,12 +873,13 @@ struct ksem_destroy_args {
 int
 sys_ksem_destroy(struct thread *td, struct ksem_destroy_args *uap)
 {
+	cap_rights_t rights;
 	struct file *fp;
 	struct ksem *ks;
 	int error;
 
 	/* No capability rights required to close a semaphore. */
-	error = ksem_get(td, uap->id, 0, &fp);
+	error = ksem_get(td, uap->id, cap_rights_init(&rights), &fp);
 	if (error)
 		return (error);
 	ks = fp->f_data;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201507232318.t6NNI4QG016985>