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 <[email protected]>
---
 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:]+_.@-]* ]]; then
                        error "$(gettext "%s contains invalid characters: 
'%s'")" \
                                        'pkgname' "${pkgname//[[:alnum:]+_.@-]}"
-- 
1.8.3


Reply via email to