diff options
| author | Toomas Soome <tsoome@me.com> | 2017-01-29 22:13:30 +0200 |
|---|---|---|
| committer | Robert Mustacchi <rm@joyent.com> | 2017-01-30 16:33:29 -0800 |
| commit | 22cc5444cba0d30b59582f255e2eb24e8a702824 (patch) | |
| tree | c974d5400c07b097b0ca0b53428b3d4d4c3090ae /usr/src | |
| parent | be4e997e05c92f444c81d2d197b79e67ebee2786 (diff) | |
| download | illumos-joyent-22cc5444cba0d30b59582f255e2eb24e8a702824.tar.gz | |
7821 loader: need to parse unescaped bootpath in /boot/solaris/bootenv.rc
Reviewed by: Peter Tribble <peter.tribble@gmail.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Diffstat (limited to 'usr/src')
| -rw-r--r-- | usr/src/boot/sys/boot/forth/support.4th | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/usr/src/boot/sys/boot/forth/support.4th b/usr/src/boot/sys/boot/forth/support.4th index 16b8a88846..7707102deb 100644 --- a/usr/src/boot/sys/boot/forth/support.4th +++ b/usr/src/boot/sys/boot/forth/support.4th @@ -21,8 +21,6 @@ \ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY \ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF \ SUCH DAMAGE. -\ -\ $FreeBSD$ \ Loader.rc support functions: \ @@ -512,6 +510,12 @@ also parser definitions : comma? line_pointer c@ [char] , = ; +: at? line_pointer c@ [char] @ = ; + +: slash? line_pointer c@ [char] / = ; + +: colon? line_pointer c@ [char] : = ; + \ manipulation of input line : skip_character line_pointer char+ to line_pointer ; @@ -543,8 +547,8 @@ also parser definitions line_pointer begin end_of_line? if 0 else - letter? digit? underscore? dot? comma? dash? - or or or or or + letter? digit? underscore? dot? comma? dash? at? slash? colon? + or or or or or or or or then while skip_character @@ -625,7 +629,7 @@ also parser definitions : white_space_3 eat_space - letter? digit? "quote? 'quote? or or or if + slash? letter? digit? "quote? 'quote? or or or or if ['] variable_value to parsing_function exit then ESYNTAX throw |
