Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Dec 2012 21:13:40 +0000 (UTC)
From:      Mark Linimon <linimon@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r244314 - projects/portbuild/scripts
Message-ID:  <201212162113.qBGLDeHp052681@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: linimon (doc,ports committer)
Date: Sun Dec 16 21:13:40 2012
New Revision: 244314
URL: http://svnweb.freebsd.org/changeset/base/244314

Log:
  Further work to parameterize uid and gid.

Modified:
  projects/portbuild/scripts/build
  projects/portbuild/scripts/buildproxy

Modified: projects/portbuild/scripts/build
==============================================================================
--- projects/portbuild/scripts/build	Sun Dec 16 21:10:22 2012	(r244313)
+++ projects/portbuild/scripts/build	Sun Dec 16 21:13:40 2012	(r244314)
@@ -166,7 +166,7 @@ do_create() {
     fi
 
     # create the links for the webserver under ../errorlogs/.  Note
-    # non ports-<arch> ownership of this directory!
+    # possibly different ownership of this directory!
     errorlogs=${pbd}/errorlogs
     portbuild_uid=${PORTBUILD_USER}
     if [ ! -d ${errorlogs} ]; then
@@ -583,7 +583,11 @@ pbab=${pbd}/${arch}/${branch}
 
 validate_env ${arch} ${branch} || exit 1
 
-uid=ports-${arch}
+if [ ! -z "${PORTBUILD_USER}" ]; then
+    uid=${PORTBUILD_USER}
+else
+    uid=ports-${arch}
+fi
 if [ ! -z "${PORTBUILD_GROUP}" ]; then
     gid=${PORTBUILD_GROUP}
 else

Modified: projects/portbuild/scripts/buildproxy
==============================================================================
--- projects/portbuild/scripts/buildproxy	Sun Dec 16 21:10:22 2012	(r244313)
+++ projects/portbuild/scripts/buildproxy	Sun Dec 16 21:13:40 2012	(r244314)
@@ -25,7 +25,7 @@ def validate(uid, arch):
     if uid == 0:
         return True
 
-    if getuidbyname("ports-%s" % arch) == uid:
+    if getuidbyname(portbuild_uid) == uid:
         return True
 
     return False
@@ -58,17 +58,24 @@ def process(cmd, sockfile):
 
 config = getConfig( pbc, CONFIG_SUBDIR, CONFIG_FILENAME )
 BUILDPROXY_SOCKET_FILE = config.get( 'BUILDPROXY_SOCKET_FILE' )
+PORTBUILD_USER = config.get( 'PORTBUILD_USER' )
 PORTBUILD_GROUP = config.get( 'PORTBUILD_GROUP' )
 
+portbuild_uid = PORTBUILD_USER
+if not portbuild_uid:
+    portbuild_uid = "ports-" + arch
+
 if os.path.exists(BUILDPROXY_SOCKET_FILE):
     os.unlink(BUILDPROXY_SOCKET_FILE)
 s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
 s.bind(BUILDPROXY_SOCKET_FILE)
-if not PORTBUILD_GROUP:
-    os.chmod(BUILDPROXY_SOCKET_FILE, 0600)
-else:
-    os.chmod(BUILDPROXY_SOCKET_FILE, 0660)
-    os.chown(BUILDPROXY_SOCKET_FILE, -1, getgidbyname(PORTBUILD_GROUP))
+os.chmod(BUILDPROXY_SOCKET_FILE, 0600)
+if PORTBUILD_USER:
+    if PORTBUILD_GROUP:
+        os.chown(BUILDPROXY_SOCKET_FILE, getuidbyname(PORTBUILD_USER), getgidbyname(PORTBUILD_GROUP))
+        os.chmod(BUILDPROXY_SOCKET_FILE, 0660)
+    else:
+        os.chown(BUILDPROXY_SOCKET_FILE, getuidbyname(PORTBUILD_USER), -1)
 
 s.listen(10)
 



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