[LEDE-DEV] [PATCH v2 1/2] base-files: allocate uid/gid starting from 65536

Daniel Golle daniel at makrotopia.org
Fri Jun 16 04:47:46 PDT 2017


On Fri, Jun 16, 2017 at 10:30:14AM -0000, Karl Palsson wrote:
> 
> 
> I fairly strong feel that this change brings no value to the
> table.

I disagree. For now, the two allocation schemes (hardcoded vs.
dynamic) are competing for the same address space. This can
result in a hard-coded UID/GID to be already allocated to a
package using the dynamic allocation method. Shifting the
dynamic allocation to the range starting from 65536 solves
that problem in a convenient way.
Hence I support Yousong's change.

Cheers

Daniel

> 
> Sincerely,
> Karl Palsson
> 
> Yousong Zhou <yszhou4tech at gmail.com> wrote:
> > There already exist static assignment of uid/gid 65533 in
> > packages feed and we have nobody/nogroup taking 65534 as their
> > ids. Let's change the pid of dynamic assignment to start from
> > 65536 so that the two assignment scheme will not collide with
> > each other
> > 
> > While at it, fix the scan command checking existence of uid/gid
> > 
> > Signed-off-by: Yousong Zhou <yszhou4tech at gmail.com>
> > ---
> >  package/base-files/Makefile               | 2 +-
> >  package/base-files/files/lib/functions.sh | 8 ++++----
> >  2 files changed, 5 insertions(+), 5 deletions(-)
> > 
> > diff --git a/package/base-files/Makefile
> > b/package/base-files/Makefile index c669ff0ac6..54c157611f
> > 100644
> > --- a/package/base-files/Makefile
> > +++ b/package/base-files/Makefile
> > @@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/kernel.mk
> >  include $(INCLUDE_DIR)/version.mk
> >  
> >  PKG_NAME:=base-files
> > -PKG_RELEASE:=173
> > +PKG_RELEASE:=174
> >  PKG_FLAGS:=nonshared
> >  
> >  PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/
> > diff --git a/package/base-files/files/lib/functions.sh
> > b/package/base-files/files/lib/functions.sh index
> > 2b6415a200..81ef84b8ef 100755
> > --- a/package/base-files/files/lib/functions.sh
> > +++ b/package/base-files/files/lib/functions.sh
> > @@ -306,8 +306,8 @@ group_add_next() {
> >  	gid=$(grep -s "^${1}:" ${IPKG_INSTROOT}/etc/group | cut -d: -f3)
> >  	[ -n "$gid" ] && return $gid
> >  	gids=$(cat ${IPKG_INSTROOT}/etc/group | cut -d: -f3)
> > -	gid=100
> > -	while [ -n "$(echo $gids | grep $gid)" ] ; do
> > +	gid=65536
> > +	while [ -n "$(echo "$gids" | grep "^$gid$")" ] ; do
> >  	        gid=$((gid + 1))
> >  	done
> >  	group_add $1 $gid
> > @@ -334,8 +334,8 @@ user_add() {
> >  	local rc
> >  	[ -z "$uid" ] && {
> >  		uids=$(cat ${IPKG_INSTROOT}/etc/passwd | cut -d: -f3)
> > -		uid=100
> > -		while [ -n "$(echo $uids | grep $uid)" ] ; do
> > +		uid=65536
> > +		while [ -n "$(echo "$uids" | grep "^$uid$")" ] ; do
> >  		        uid=$((uid + 1))
> >  		done
> >  	}
> > -- 
> > 2.12.2
> > 
> > 
> > _______________________________________________
> > Lede-dev mailing list
> > Lede-dev at lists.infradead.org
> > http://lists.infradead.org/mailman/listinfo/lede-dev






More information about the Lede-dev mailing list