* Release of 2.00~rc1
@ 2012-06-23 20:59 Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-23 21:30 ` Aleš Nesrsta
` (3 more replies)
0 siblings, 4 replies; 13+ messages in thread
From: Vladimir 'φ-coder/phcoder' Serbinenko @ 2012-06-23 20:59 UTC (permalink / raw)
To: The development of GRUB 2
[-- Attachment #1: Type: text/plain, Size: 407 bytes --]
Hello, all. I'm proud to introduce 2.00~rc1 to you.
It's available as
ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.gz
or
ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.xz
As far as I'm aware all issues have been either postponed or resolved
correctly, so I'll release 2.00 on Monday. Give ~rc1 a spin over the
weekend and report any issues.
--
Regards
Vladimir 'φ-coder/phcoder' Serbinenko
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 294 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Release of 2.00~rc1
2012-06-23 20:59 Release of 2.00~rc1 Vladimir 'φ-coder/phcoder' Serbinenko
@ 2012-06-23 21:30 ` Aleš Nesrsta
2012-06-23 21:57 ` Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-24 7:29 ` Robert Mabee
` (2 subsequent siblings)
3 siblings, 1 reply; 13+ messages in thread
From: Aleš Nesrsta @ 2012-06-23 21:30 UTC (permalink / raw)
To: The development of GNU GRUB
Hi,
I tried compile source from link and I got this error:
...
gcc -DHAVE_CONFIG_H -I. -I.. -Wall -W -I../include -I../include
-DGRUB_MACHINE_PCBIOS=1 -DGRUB_MACHINE=I386_PC -DGRUB_TARGET_CPU_I386=1
-m32 -nostdinc -isystem /usr/lib/gcc/i486-linux-gnu/4.4.5/include
-DGRUB_FILE=\"loader/i386/linux.c\" -I. -I. -I.. -I.. -I../include
-I../include -Os -Wall -W -Wshadow -Wold-style-definition
-Wpointer-arith -Wundef -Wextra -Waddress -Wattributes -Wcast-align
-Wchar-subscripts -Wcomment -Wdeprecated-declarations
-Wdisabled-optimization -Wdiv-by-zero -Wempty-body -Wendif-labels
-Wfloat-equal -Wformat-extra-args -Wformat-security -Wformat-y2k
-Wimplicit -Wimplicit-function-declaration -Wimplicit-int -Winit-self
-Wint-to-pointer-cast -Winvalid-pch -Wmain -Wmissing-braces
-Wmissing-field-initializers -Wmissing-format-attribute
-Wmissing-noreturn -Wmultichar -Wnonnull -Woverflow -Wparentheses
-Wpointer-arith -Wpointer-to-int-cast -Wreturn-type -Wsequence-point
-Wshadow -Wsign-compare -Wstrict-aliasing -Wswitch -Wtrigraphs -Wundef
-Wunknown-pragmas -Wunused -Wunused-function -Wunused-label
-Wunused-parameter -Wunused-value -Wunused-variable -Wvariadic-macros
-Wvolatile-register-var -Wwrite-strings -Wnested-externs
-Wstrict-prototypes -Wpointer-sign -g -Wredundant-decls
-Wmissing-prototypes -Wmissing-declarations -falign-jumps=1
-falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse -mno-sse2
-mno-3dnow -fno-dwarf2-cfi-asm -fno-asynchronous-unwind-tables -m32
-fno-stack-protector -mno-stack-arg-probe -Werror -DUSE_ASCII_FAILBACK=1
-DHAVE_UNIFONT_WIDTHSPEC=1 -mrtd -mregparm=3 -ffreestanding -MT
loader/i386/linux_module-linux.o -MD -MP -MF
loader/i386/.deps-core/linux_module-linux.Tpo -c -o
loader/i386/linux_module-linux.o `test -f 'loader/i386/linux.c' || echo
'./'`loader/i386/linux.c
cc1: warnings being treated as errors
loader/i386/linux.c: In function 'grub_cmd_initrd':
loader/i386/linux.c:1149: error: dereferencing pointer 'lh' does break
strict-aliasing rules
loader/i386/linux.c:1148: error: dereferencing pointer 'lh' does break
strict-aliasing rules
loader/i386/linux.c:1147: error: dereferencing pointer 'lh' does break
strict-aliasing rules
loader/i386/linux.c:1084: error: dereferencing pointer 'lh' does break
strict-aliasing rules
loader/i386/linux.c:1082: error: dereferencing pointer 'lh' does break
strict-aliasing rules
loader/i386/linux.c:1079: note: initialized from here
make[3]: *** [loader/i386/linux_module-linux.o] Error 1
make[3]: Leaving directory `/home/starous/src/grub-2.00~rc1/grub-core'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/starous/src/grub-2.00~rc1/grub-core'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/starous/src/grub-2.00~rc1'
make: *** [all] Error 2
(I am using DEBIAN Squeeze, gcc version: gcc (Debian 4.4.5-8) 4.4.5)
BR,
Ales
Vladimir 'φ-coder/phcoder' Serbinenko píše v So 23. 06. 2012 v 22:59
+0200:
> Hello, all. I'm proud to introduce 2.00~rc1 to you.
> It's available as
> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.gz
> or
> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.xz
> As far as I'm aware all issues have been either postponed or resolved
> correctly, so I'll release 2.00 on Monday. Give ~rc1 a spin over the
> weekend and report any issues.
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Release of 2.00~rc1
2012-06-23 21:30 ` Aleš Nesrsta
@ 2012-06-23 21:57 ` Vladimir 'φ-coder/phcoder' Serbinenko
0 siblings, 0 replies; 13+ messages in thread
From: Vladimir 'φ-coder/phcoder' Serbinenko @ 2012-06-23 21:57 UTC (permalink / raw)
To: grub-devel
[-- Attachment #1: Type: text/plain, Size: 1571 bytes --]
On 23.06.2012 23:30, Aleš Nesrsta wrote:
> Hi,
> I tried compile source from link and I got this error:
>
Your compiler is too warning-prone :(
Try this:
=== modified file 'grub-core/loader/i386/linux.c'
--- grub-core/loader/i386/linux.c 2012-06-20 21:39:33 +0000
+++ grub-core/loader/i386/linux.c 2012-06-23 21:46:30 +0000
@@ -1043,7 +1043,6 @@
grub_addr_t addr_min, addr_max;
grub_addr_t addr;
grub_err_t err;
- struct linux_kernel_header *lh;
int i;
int nfiles = 0;
grub_uint8_t *ptr;
@@ -1076,12 +1075,10 @@
initrd_pages = (page_align (size) >> 12);
- lh = (struct linux_kernel_header *) &linux_params;
-
/* Get the highest address available for the initrd. */
- if (grub_le_to_cpu16 (lh->version) >= 0x0203)
+ if (grub_le_to_cpu16 (linux_params.version) >= 0x0203)
{
- addr_max = grub_cpu_to_le32 (lh->initrd_addr_max);
+ addr_max = grub_cpu_to_le32 (linux_params.initrd_addr_max);
/* XXX in reality, Linux specifies a bogus value, so
it is necessary to make sure that ADDR_MAX does not exceed
@@ -1144,9 +1141,9 @@
grub_dprintf ("linux", "Initrd, addr=0x%x, size=0x%x\n",
(unsigned) addr, (unsigned) size);
- lh->ramdisk_image = initrd_mem_target;
- lh->ramdisk_size = size;
- lh->root_dev = 0x0100; /* XXX */
+ linux_params.ramdisk_image = initrd_mem_target;
+ linux_params.ramdisk_size = size;
+ linux_params.root_dev = 0x0100; /* XXX */
fail:
for (i = 0; i < nfiles; i++)
--
Regards
Vladimir 'φ-coder/phcoder' Serbinenko
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 294 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Release of 2.00~rc1
2012-06-23 20:59 Release of 2.00~rc1 Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-23 21:30 ` Aleš Nesrsta
@ 2012-06-24 7:29 ` Robert Mabee
2012-06-24 18:30 ` Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-25 18:23 ` Release of 2.00~rc1 Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-25 14:29 ` David Cantrell
2012-06-26 18:27 ` Bruce Dubbs
3 siblings, 2 replies; 13+ messages in thread
From: Robert Mabee @ 2012-06-24 7:29 UTC (permalink / raw)
To: grub-devel
On 06/23/2012 04:59 PM, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
> Hello, all. I'm proud to introduce 2.00~rc1 to you.
> It's available as
> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.gz
> or
> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.xz
> As far as I'm aware all issues have been either postponed or resolved
> correctly, so I'll release 2.00 on Monday. Give ~rc1 a spin over the
> weekend and report any issues.
>
Missed this one, where the symbol belongs to some other interface,
but has a value close enough to require an insane test (a filename
containing a newline) to get incorrect results:
=== modified file 'grub-core/commands/wildcard.c'
--- old/grub-core/commands/wildcard.c 2012-06-08 20:54:21 +0000
+++ new/grub-core/commands/wildcard.c 2012-06-24 06:55:33 +0000
@@ -153,7 +153,7 @@
buffer[i] = '\0';
grub_dprintf ("expand", "Regexp is %s\n", buffer);
- if (regcomp (regexp, buffer, RE_SYNTAX_GNU_AWK))
+ if (regcomp (regexp, buffer, REG_EXTENDED))
{
grub_free (buffer);
return 1;
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Release of 2.00~rc1
2012-06-24 7:29 ` Robert Mabee
@ 2012-06-24 18:30 ` Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-25 9:12 ` REG_EXTENDED (was Re: Release of 2.00~rc1) Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-25 18:23 ` Release of 2.00~rc1 Vladimir 'φ-coder/phcoder' Serbinenko
1 sibling, 1 reply; 13+ messages in thread
From: Vladimir 'φ-coder/phcoder' Serbinenko @ 2012-06-24 18:30 UTC (permalink / raw)
To: grub-devel
[-- Attachment #1: Type: text/plain, Size: 1556 bytes --]
On 24.06.2012 09:29, Robert Mabee wrote:
> On 06/23/2012 04:59 PM, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
>> Hello, all. I'm proud to introduce 2.00~rc1 to you.
>> It's available as
>> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.gz
>> or
>> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.xz
>> As far as I'm aware all issues have been either postponed or resolved
>> correctly, so I'll release 2.00 on Monday. Give ~rc1 a spin over the
>> weekend and report any issues.
>>
> Missed this one, where the symbol belongs to some other interface,
> but has a value close enough to require an insane test (a filename
> containing a newline) to get incorrect results:
>
It wasn't presented as something that fixed any real issue but something
that would be just cleaner. Dangerous cleanups aren't appropriate for
freeze time. Please be more precise about the real issues.
> === modified file 'grub-core/commands/wildcard.c'
> --- old/grub-core/commands/wildcard.c 2012-06-08 20:54:21 +0000
> +++ new/grub-core/commands/wildcard.c 2012-06-24 06:55:33 +0000
> @@ -153,7 +153,7 @@
> buffer[i] = '\0';
> grub_dprintf ("expand", "Regexp is %s\n", buffer);
>
> - if (regcomp (regexp, buffer, RE_SYNTAX_GNU_AWK))
> + if (regcomp (regexp, buffer, REG_EXTENDED))
> {
> grub_free (buffer);
> return 1;
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
--
Regards
Vladimir 'φ-coder/phcoder' Serbinenko
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 294 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* REG_EXTENDED (was Re: Release of 2.00~rc1)
2012-06-24 18:30 ` Vladimir 'φ-coder/phcoder' Serbinenko
@ 2012-06-25 9:12 ` Vladimir 'φ-coder/phcoder' Serbinenko
0 siblings, 0 replies; 13+ messages in thread
From: Vladimir 'φ-coder/phcoder' Serbinenko @ 2012-06-25 9:12 UTC (permalink / raw)
To: grub-devel
[-- Attachment #1: Type: text/plain, Size: 1738 bytes --]
On 24.06.2012 20:30, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
> On 24.06.2012 09:29, Robert Mabee wrote:
>
>> On 06/23/2012 04:59 PM, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
>>> Hello, all. I'm proud to introduce 2.00~rc1 to you.
>>> It's available as
>>> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.gz
>>> or
>>> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.xz
>>> As far as I'm aware all issues have been either postponed or resolved
>>> correctly, so I'll release 2.00 on Monday. Give ~rc1 a spin over the
>>> weekend and report any issues.
>>>
>> Missed this one, where the symbol belongs to some other interface,
>> but has a value close enough to require an insane test (a filename
>> containing a newline) to get incorrect results:
>>
>
> It wasn't presented as something that fixed any real issue but something
> that would be just cleaner. Dangerous cleanups aren't appropriate for
> freeze time. Please be more precise about the real issues.
>
Please be more exact as to why this patch is needed.
>> === modified file 'grub-core/commands/wildcard.c'
>> --- old/grub-core/commands/wildcard.c 2012-06-08 20:54:21 +0000
>> +++ new/grub-core/commands/wildcard.c 2012-06-24 06:55:33 +0000
>> @@ -153,7 +153,7 @@
>> buffer[i] = '\0';
>> grub_dprintf ("expand", "Regexp is %s\n", buffer);
>>
>> - if (regcomp (regexp, buffer, RE_SYNTAX_GNU_AWK))
>> + if (regcomp (regexp, buffer, REG_EXTENDED))
>> {
>> grub_free (buffer);
>> return 1;
>>
>>
>> _______________________________________________
>> Grub-devel mailing list
>> Grub-devel@gnu.org
>> https://lists.gnu.org/mailman/listinfo/grub-devel
>
>
>
--
Regards
Vladimir 'φ-coder/phcoder' Serbinenko
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 294 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Release of 2.00~rc1
2012-06-23 20:59 Release of 2.00~rc1 Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-23 21:30 ` Aleš Nesrsta
2012-06-24 7:29 ` Robert Mabee
@ 2012-06-25 14:29 ` David Cantrell
2012-06-26 18:27 ` Bruce Dubbs
3 siblings, 0 replies; 13+ messages in thread
From: David Cantrell @ 2012-06-25 14:29 UTC (permalink / raw)
To: Vladimir 'φ-coder/phcoder' Serbinenko
Cc: The development of GRUB 2
On Sat, Jun 23, 2012 at 10:59:28PM +0200, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
> Hello, all. I'm proud to introduce 2.00~rc1 to you.
> It's available as
> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.gz
> or
> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.xz
> As far as I'm aware all issues have been either postponed or resolved
> correctly, so I'll release 2.00 on Monday. Give ~rc1 a spin over the
> weekend and report any issues.
Great news, Vlad! Looking forward to this release making it in to Fedora!
--
David Cantrell <dcantrell@redhat.com>
Supervisor, Installer Engineering Team
Red Hat, Inc. | Westford, MA | EST5EDT
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Release of 2.00~rc1
2012-06-24 7:29 ` Robert Mabee
2012-06-24 18:30 ` Vladimir 'φ-coder/phcoder' Serbinenko
@ 2012-06-25 18:23 ` Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-26 2:16 ` Robert Mabee
1 sibling, 1 reply; 13+ messages in thread
From: Vladimir 'φ-coder/phcoder' Serbinenko @ 2012-06-25 18:23 UTC (permalink / raw)
To: The development of GNU GRUB
[-- Attachment #1: Type: text/plain, Size: 1634 bytes --]
On 24.06.2012 09:29, Robert Mabee wrote:
> On 06/23/2012 04:59 PM, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
>> Hello, all. I'm proud to introduce 2.00~rc1 to you.
>> It's available as
>> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.gz
>> or
>> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.xz
>> As far as I'm aware all issues have been either postponed or resolved
>> correctly, so I'll release 2.00 on Monday. Give ~rc1 a spin over the
>> weekend and report any issues.
>>
> Missed this one, where the symbol belongs to some other interface,
> but has a value close enough to require an insane test (a filename
> containing a newline) to get incorrect results:
>
> === modified file 'grub-core/commands/wildcard.c'
> --- old/grub-core/commands/wildcard.c 2012-06-08 20:54:21 +0000
> +++ new/grub-core/commands/wildcard.c 2012-06-24 06:55:33 +0000
> @@ -153,7 +153,7 @@
> buffer[i] = '\0';
> grub_dprintf ("expand", "Regexp is %s\n", buffer);
>
> - if (regcomp (regexp, buffer, RE_SYNTAX_GNU_AWK))
> + if (regcomp (regexp, buffer, REG_EXTENDED))
> {
> grub_free (buffer);
> return 1;
>
REG_EXTENDED isn't even a syntax type but is just refined to 1. Valid
syntaxes are:
RE_SYNTAX_EMACS
RE_SYNTAX_AWK
RE_SYNTAX_GNU_AWK RE_SYNTAX_POSIX_AWK RE_SYNTAX_GREP
RE_SYNTAX_EGREP RE_SYNTAX_POSIX_EGREP RE_SYNTAX_ED
RE_SYNTAX_SED
RE_SYNTAX_POSIX_BASIC RE_SYNTAX_POSIX_MINIMAL_BASIC
RE_SYNTAX_POSIX_EXTENDED RE_SYNTAX_POSIX_MINIMAL_EXTENDED
Additionally no real testcase was ever demonstrated.
--
Regards
Vladimir 'φ-coder/phcoder' Serbinenko
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 294 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Release of 2.00~rc1
2012-06-25 18:23 ` Release of 2.00~rc1 Vladimir 'φ-coder/phcoder' Serbinenko
@ 2012-06-26 2:16 ` Robert Mabee
2012-06-26 2:46 ` Vladimir 'φ-coder/phcoder' Serbinenko
0 siblings, 1 reply; 13+ messages in thread
From: Robert Mabee @ 2012-06-26 2:16 UTC (permalink / raw)
To: grub-devel
On 06/25/2012 02:23 PM, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
> On 24.06.2012 09:29, Robert Mabee wrote:
>
>> Missed this one, where the symbol belongs to some other interface,
>> but has a value close enough to require an insane test (a filename
>> containing a newline) to get incorrect results:
>>
>> === modified file 'grub-core/commands/wildcard.c'
>> --- old/grub-core/commands/wildcard.c 2012-06-08 20:54:21 +0000
>> +++ new/grub-core/commands/wildcard.c 2012-06-24 06:55:33 +0000
>> @@ -153,7 +153,7 @@
>> buffer[i] = '\0';
>> grub_dprintf ("expand", "Regexp is %s\n", buffer);
>>
>> - if (regcomp (regexp, buffer, RE_SYNTAX_GNU_AWK))
>> + if (regcomp (regexp, buffer, REG_EXTENDED))
>> {
>> grub_free (buffer);
>> return 1;
>>
> REG_EXTENDED isn't even a syntax type but is just refined to 1. Valid
> syntaxes are:
>
> RE_SYNTAX_EMACS
> RE_SYNTAX_AWK
> RE_SYNTAX_GNU_AWK RE_SYNTAX_POSIX_AWK RE_SYNTAX_GREP
> RE_SYNTAX_EGREP RE_SYNTAX_POSIX_EGREP RE_SYNTAX_ED
> RE_SYNTAX_SED
> RE_SYNTAX_POSIX_BASIC RE_SYNTAX_POSIX_MINIMAL_BASIC
> RE_SYNTAX_POSIX_EXTENDED RE_SYNTAX_POSIX_MINIMAL_EXTENDED
>
> Additionally no real testcase was ever demonstrated.
Looking at the code and "man regex" (not binding on Grub, but describes
the code that was imported), it appears regcomp takes the OR of any of
REG_EXTENDED, REG_ICASE, REG_NEWLINE, REG_NOSUB, all defined by
POSIX. RE_SYNTAX_* are valid args to re_set_syntax or re_compile_internal,
defined by GNU.
RE_SYNTAX_GNU_AWK happens to have the bits REG_EXTENDED, REG_NEWLINE,
and REG_NOSUB set. The last has no effect because wildcard.c doesn't pass
the array to collect subexpression matches. REG_EXTENDED is usually used
because the alternative ("basic") syntax is called obsolete. However,
the basic
syntax has many fewer special characters so would save code (to quote them)
in wildcard.c. Probably REG_ICASE should be set according to the fs case
insensitivity.
REG_NEWLINE causes incorrect results when a filename contains a newline,
both because a wild char won't match the newline, and because the generated
pattern anchors ^$ can match adjacent to the newline. For example, after
echo foo >'/foo
bar'
(shell, OS, fs permitting) Grub will fail to show this file with ls /f*r
but will show
it with /*o or /b* (as well as the expected /*r and /f*).
I support your choice not to include this in a code freeze, since it is
so unlikely
to affect anyone. I only wanted to make sure it didn't get lost.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Release of 2.00~rc1
2012-06-26 2:16 ` Robert Mabee
@ 2012-06-26 2:46 ` Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-27 4:40 ` Robert Mabee
0 siblings, 1 reply; 13+ messages in thread
From: Vladimir 'φ-coder/phcoder' Serbinenko @ 2012-06-26 2:46 UTC (permalink / raw)
To: grub-devel
[-- Attachment #1: Type: text/plain, Size: 3604 bytes --]
On 26.06.2012 04:16, Robert Mabee wrote:
> On 06/25/2012 02:23 PM, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
>> On 24.06.2012 09:29, Robert Mabee wrote:
>>
>>> Missed this one, where the symbol belongs to some other interface,
>>> but has a value close enough to require an insane test (a filename
>>> containing a newline) to get incorrect results:
>>>
>>> === modified file 'grub-core/commands/wildcard.c'
>>> --- old/grub-core/commands/wildcard.c 2012-06-08 20:54:21 +0000
>>> +++ new/grub-core/commands/wildcard.c 2012-06-24 06:55:33 +0000
>>> @@ -153,7 +153,7 @@
>>> buffer[i] = '\0';
>>> grub_dprintf ("expand", "Regexp is %s\n", buffer);
>>>
>>> - if (regcomp (regexp, buffer, RE_SYNTAX_GNU_AWK))
>>> + if (regcomp (regexp, buffer, REG_EXTENDED))
>>> {
>>> grub_free (buffer);
>>> return 1;
>>>
>> REG_EXTENDED isn't even a syntax type but is just refined to 1. Valid
>> syntaxes are:
>>
>> RE_SYNTAX_EMACS
>> RE_SYNTAX_AWK
>> RE_SYNTAX_GNU_AWK
>> RE_SYNTAX_POSIX_AWK RE_SYNTAX_GREP
>> RE_SYNTAX_EGREP
>> RE_SYNTAX_POSIX_EGREP RE_SYNTAX_ED
>> RE_SYNTAX_SED
>> RE_SYNTAX_POSIX_BASIC
>> RE_SYNTAX_POSIX_MINIMAL_BASIC
>> RE_SYNTAX_POSIX_EXTENDED
>> RE_SYNTAX_POSIX_MINIMAL_EXTENDED
>>
>> Additionally no real testcase was ever demonstrated.
> Looking at the code and "man regex" (not binding on Grub, but describes
> the code that was imported), it appears regcomp takes the OR of any of
> REG_EXTENDED, REG_ICASE, REG_NEWLINE, REG_NOSUB, all defined by
> POSIX. RE_SYNTAX_* are valid args to re_set_syntax or re_compile_internal,
> defined by GNU.
>
> RE_SYNTAX_GNU_AWK happens to have the bits REG_EXTENDED, REG_NEWLINE,
> and REG_NOSUB set. The last has no effect because wildcard.c doesn't pass
> the array to collect subexpression matches. REG_EXTENDED is usually used
> because the alternative ("basic") syntax is called obsolete. However,
> the basic
> syntax has many fewer special characters so would save code (to quote them)
> in wildcard.c. Probably REG_ICASE should be set according to the fs case
> insensitivity.
>
> REG_NEWLINE causes incorrect results when a filename contains a newline,
> both because a wild char won't match the newline, and because the generated
> pattern anchors ^$ can match adjacent to the newline.
Looks like you misinterpret the flags and it's actually reversed to what
you say. Did you check that claimeed behaviour actuall occurs?
REG_NEWLINE
Match-any-character operators don't match a newline.
A nonmatching list ([^...]) not containing a newline does
not match a newline.
Match-beginning-of-line operator (^) matches the empty
string immediately after a newline, regardless of whether eflags, the
execution flags of regexec(), con‐
tains REG_NOTBOL.
> For example, after
> echo foo >'/foo
> bar'
> (shell, OS, fs permitting) Grub will fail to show this file with ls /f*r
> but will show
> it with /*o or /b* (as well as the expected /*r and /f*).
>
> I support your choice not to include this in a code freeze, since it is
> so unlikely
> to affect anyone. I only wanted to make sure it didn't get lost.
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
--
Regards
Vladimir 'φ-coder/phcoder' Serbinenko
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 294 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Release of 2.00~rc1
2012-06-23 20:59 Release of 2.00~rc1 Vladimir 'φ-coder/phcoder' Serbinenko
` (2 preceding siblings ...)
2012-06-25 14:29 ` David Cantrell
@ 2012-06-26 18:27 ` Bruce Dubbs
2012-06-26 20:03 ` Vladimir 'φ-coder/phcoder' Serbinenko
3 siblings, 1 reply; 13+ messages in thread
From: Bruce Dubbs @ 2012-06-26 18:27 UTC (permalink / raw)
To: The development of GNU GRUB
Vladimir 'φ-coder/phcoder' Serbinenko wrote:
> Hello, all. I'm proud to introduce 2.00~rc1 to you.
> It's available as
> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.gz
> or
> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.xz
Looks very good. From an LFS point of view, the only trivial warnings I
got were:
grub-core/lib/libgcrypt-grub/cipher/rijndael.c: In function 'do_setkey':
grub-core/lib/libgcrypt-grub/cipher/rijndael.c:173:21: warning:
comparison between signed and unsigned integer expressions [-Wsign-compare]
lib/libgcrypt-grub/cipher/rijndael.c: In function 'do_setkey':
lib/libgcrypt-grub/cipher/rijndael.c:173:21: warning: comparison between
signed and unsigned integer expressions [-Wsign-compare]
It looks like the same warning but built twice:
./grub-core/lib/libgcrypt/cipher/rijndael.c
./grub-core/lib/libgcrypt-grub/cipher/rijndael.c
I'm not sure why two files have the same name with different code, even
if they are in different directories.
Compiler is gcc-4.7.0.
-- Bruce
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Release of 2.00~rc1
2012-06-26 18:27 ` Bruce Dubbs
@ 2012-06-26 20:03 ` Vladimir 'φ-coder/phcoder' Serbinenko
0 siblings, 0 replies; 13+ messages in thread
From: Vladimir 'φ-coder/phcoder' Serbinenko @ 2012-06-26 20:03 UTC (permalink / raw)
To: The development of GNU GRUB
[-- Attachment #1: Type: text/plain, Size: 1553 bytes --]
On 26.06.2012 20:27, Bruce Dubbs wrote:
> Vladimir 'φ-coder/phcoder' Serbinenko wrote:
>> Hello, all. I'm proud to introduce 2.00~rc1 to you.
>
>> It's available as
>> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.gz
>> or
>> ftp://alpha.gnu.org/gnu/grub/grub-2.00~rc1.tar.xz
>
> Looks very good. From an LFS point of view, the only trivial warnings I
> got were:
>
> grub-core/lib/libgcrypt-grub/cipher/rijndael.c: In function 'do_setkey':
> grub-core/lib/libgcrypt-grub/cipher/rijndael.c:173:21: warning:
> comparison between signed and unsigned integer expressions [-Wsign-compare]
>
> lib/libgcrypt-grub/cipher/rijndael.c: In function 'do_setkey':
> lib/libgcrypt-grub/cipher/rijndael.c:173:21: warning: comparison between
> signed and unsigned integer expressions [-Wsign-compare]
>
> It looks like the same warning but built twice:
>
Yes, once for core and once for tools which may be for different archs
(most commonly tools are amd64 and core is i386)
> ./grub-core/lib/libgcrypt/cipher/rijndael.c
> ./grub-core/lib/libgcrypt-grub/cipher/rijndael.c
>
> I'm not sure why two files have the same name with different code, even
> if they are in different directories.
>
One is original and another one is automatically imported one.
> Compiler is gcc-4.7.0.
>
> -- Bruce
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
--
Regards
Vladimir 'φ-coder/phcoder' Serbinenko
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 294 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Release of 2.00~rc1
2012-06-26 2:46 ` Vladimir 'φ-coder/phcoder' Serbinenko
@ 2012-06-27 4:40 ` Robert Mabee
0 siblings, 0 replies; 13+ messages in thread
From: Robert Mabee @ 2012-06-27 4:40 UTC (permalink / raw)
To: grub-devel
On 06/25/2012 10:46 PM, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
> On 26.06.2012 04:16, Robert Mabee wrote:
>> REG_NEWLINE causes incorrect results when a filename contains a newline,
>> both because a wild char won't match the newline, and because the generated
>> pattern anchors ^$ can match adjacent to the newline.
> Looks like you misinterpret the flags and it's actually reversed to what
> you say. Did you check that claimeed behaviour actuall occurs?
Yes, though with a different filename.
> REG_NEWLINE
> Match-any-character operators don't match a newline.
>
> A nonmatching list ([^...]) not containing a newline does
> not match a newline.
>
> Match-beginning-of-line operator (^) matches the empty
> string immediately after a newline, regardless of whether eflags, the
> execution flags of regexec(), con‐
> tains REG_NOTBOL.
Those are the undesirable (in my opinion) behaviors in this case, where
^ and $
are supplied automatically to make sure the user pattern matches the entire
filename, and everyone knows * matches all files, but newline in a filename
spoils both.
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2012-06-27 4:40 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-06-23 20:59 Release of 2.00~rc1 Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-23 21:30 ` Aleš Nesrsta
2012-06-23 21:57 ` Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-24 7:29 ` Robert Mabee
2012-06-24 18:30 ` Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-25 9:12 ` REG_EXTENDED (was Re: Release of 2.00~rc1) Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-25 18:23 ` Release of 2.00~rc1 Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-26 2:16 ` Robert Mabee
2012-06-26 2:46 ` Vladimir 'φ-coder/phcoder' Serbinenko
2012-06-27 4:40 ` Robert Mabee
2012-06-25 14:29 ` David Cantrell
2012-06-26 18:27 ` Bruce Dubbs
2012-06-26 20:03 ` Vladimir 'φ-coder/phcoder' Serbinenko
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.