git: 380f42e2ed36 - releng/14.0 - stand: lua: module names should permit more

From: Kyle Evans <kevans_at_FreeBSD.org>
Date: Tue, 12 Sep 2023 01:49:24 UTC
The branch releng/14.0 has been updated by kevans:

URL: https://cgit.FreeBSD.org/src/commit/?id=380f42e2ed3627d47696a1409a1a3ea07aebff17

commit 380f42e2ed3627d47696a1409a1a3ea07aebff17
Author:     Kyle Evans <kevans@FreeBSD.org>
AuthorDate: 2023-09-05 02:21:34 +0000
Commit:     Kyle Evans <kevans@FreeBSD.org>
CommitDate: 2023-09-12 01:48:51 +0000

    stand: lua: module names should permit more
    
    The module entries should generally allow whatever is allowed as an
    env_var in the pattern table.  Notably, we're missing periods which
    would allow proper entries for .dtb files in loader.conf that don't need
    to specify a module_name entry for it.
    
    %d in this expression is actually redundant as %w is actually
    "all alphanumerics," but I've included it for now to match the env_var
    entry.  We should really remove it from both.
    
    Reported by:    "aribi" on the forums via allanjude@
    Approved by:    re (gjb)
    
    (cherry picked from commit 5bc1e0c2285e73fe8455bb6c72b2b40e33f5477e)
    (cherry picked from commit 6b2f0a3c31dbf9268b49d64c859da136ca8dc201)
---
 stand/lua/config.lua | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/stand/lua/config.lua b/stand/lua/config.lua
index 3f8fbc52cb40..8fdc805ee983 100644
--- a/stand/lua/config.lua
+++ b/stand/lua/config.lua
@@ -61,7 +61,10 @@ local MSG_FAILSYN_EOLESC = "Stray escape at end of line"
 local MSG_FAILSYN_EOLVAR = "Unescaped $ at end of line"
 local MSG_FAILSYN_BADVAR = "Malformed variable expression at position '%d'"
 
-local MODULEEXPR = '([-%w_]+)'
+-- MODULEEXPR should more or less allow the exact same set of characters as the
+-- env_var entries in the pattern table.  This is perhaps a good target for a
+-- little refactoring.
+local MODULEEXPR = '([%w%d-_.]+)'
 local QVALEXPR = '"(.*)"'
 local QVALREPL = QVALEXPR:gsub('%%', '%%%%')
 local WORDEXPR = "([-%w%d][-%w%d_.]*)"