[pacman-dev] [PATCH] Restrict pkgname from starting with a dot.

Allan McRae allan at archlinux.org
Mon Jun 3 23:41:08 EDT 2013


Adding this restriction means we can filter any FILENAME entry from
starting with a "/" or a ".".  Use the term "dot" as it is more
computing relevant compared to "full stop" or "period" which vary
depending on English locale.

Signed-off-by: Allan McRae <allan at archlinux.org>
---
 doc/PKGBUILD.5.txt    | 2 +-
 scripts/makepkg.sh.in | 4 ++++
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/doc/PKGBUILD.5.txt b/doc/PKGBUILD.5.txt
index ea280a0..e78a8e5 100644
--- a/doc/PKGBUILD.5.txt
+++ b/doc/PKGBUILD.5.txt
@@ -42,7 +42,7 @@ similar to `$_basekernver`.
 	Either the name of the package or an array of names for split packages.
 	Valid characters for members of this array are alphanumerics, and any of
 	the following characters: ```@ . _ + -`''. Additionally, names are not
-	allowed to start with hyphens.
+	allowed to start with hyphens or dots.
 
 *pkgver*::
 	The version of the software as released from the author (e.g., '2.7.1').
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 08dcf4c..a8a552f 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -2111,6 +2111,10 @@ check_sanity() {
 			error "$(gettext "%s is not allowed to start with a hyphen.")" "pkgname"
 			ret=1
 		fi
+		if [[ ${i:0:1} = "." ]]; then
+			error "$(gettext "%s is not allowed to start with a dot.")" "pkgname"
+			ret=1
+		fi
 		if [[ $i = *[^[:alnum:]+_. at -]* ]]; then
 			error "$(gettext "%s contains invalid characters: '%s'")" \
 					'pkgname' "${pkgname//[[:alnum:]+_. at -]}"
-- 
1.8.3



More information about the pacman-dev mailing list