* [devel] PIE Executables @ 2008-05-21 18:02 Led 2008-05-21 18:16 ` Led ` (2 more replies) 0 siblings, 3 replies; 20+ messages in thread From: Led @ 2008-05-21 18:02 UTC (permalink / raw) To: ALT Linux Team development discussions Забавный случай: $ file ~/tmp/autofs-buildroot/usr/sbin/automount automount: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, stripped ? Естественно, rpmbuild (fixup-libraries) делает ему "chmod 644" :( Насколько я понял, это происходит из-за того, что этот бинарник линкуется с -fpie. У нас этого делать нельзя? -- Led ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-21 18:02 [devel] PIE Executables Led @ 2008-05-21 18:16 ` Led 2008-05-21 18:24 ` Andrey Rahmatullin 2008-05-21 19:21 ` Kirill A. Shutemov 2 siblings, 0 replies; 20+ messages in thread From: Led @ 2008-05-21 18:16 UTC (permalink / raw) To: ALT Linux Team development discussions В сообщении от Wednesday 21 May 2008 21:02:42 Led написал(а): > Забавный случай: > > $ file ~/tmp/autofs-buildroot/usr/sbin/automount > automount: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), for > GNU/Linux 2.6.9, stripped > > ? > Естественно, rpmbuild (fixup-libraries) делает ему "chmod 644" :( > Насколько я понял, это происходит из-за того, что этот бинарник линкуется > с -fpie. Сорри, опечатался. Следует читать как "линкуется с -pie" > У нас этого делать нельзя? -- Led ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-21 18:02 [devel] PIE Executables Led 2008-05-21 18:16 ` Led @ 2008-05-21 18:24 ` Andrey Rahmatullin 2008-05-21 19:21 ` Kirill A. Shutemov 2 siblings, 0 replies; 20+ messages in thread From: Andrey Rahmatullin @ 2008-05-21 18:24 UTC (permalink / raw) To: devel [-- Attachment #1: Type: text/plain, Size: 3258 bytes --] On Wed, May 21, 2008 at 09:02:42PM +0300, Led wrote: > $ file ~/tmp/autofs-buildroot/usr/sbin/automount > automount: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), for > GNU/Linux 2.6.9, stripped $ file /usr/sbin/*|fgrep object /usr/sbin/avctrl: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/bccmd: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/convertquota: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/edquota: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/hciattach: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/hciconfig: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/hcid: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/hcidump: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/hciemu: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/hid2hci: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/nmbd: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/quot: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/quotastats: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/repquota: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/rpc.rquotad: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/setquota: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/smbd: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/warnquota: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/winbindd: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/xinetd: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped /usr/sbin/xqmstats: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, stripped > Естественно, rpmbuild (fixup-libraries) делает ему "chmod 644" :( O RLY? -- WBR, wRAR (ALT Linux Team) Powered by the ALT Linux fortune(8): * Lost .oO(Линуксфест 2030: театрализованное представление по сценариям классических народных фортунок) [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-21 18:02 [devel] PIE Executables Led 2008-05-21 18:16 ` Led 2008-05-21 18:24 ` Andrey Rahmatullin @ 2008-05-21 19:21 ` Kirill A. Shutemov 2008-05-21 20:44 ` Led 2 siblings, 1 reply; 20+ messages in thread From: Kirill A. Shutemov @ 2008-05-21 19:21 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 1165 bytes --] On Wed, May 21, 2008 at 09:02:42PM +0300, Led wrote: > Забавный случай: > > $ file ~/tmp/autofs-buildroot/usr/sbin/automount > automount: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), for > GNU/Linux 2.6.9, stripped > > ? > Естественно, rpmbuild (fixup-libraries) делает ему "chmod 644" :( Нет, это не естественно. shared object -- это и shared library и position independed executable. В fixup-libraries есть эвристика для отделения мух от котлет. chmod, по идее, должен делаться только для shared library. > Насколько я понял, это происходит из-за того, что этот бинарник линкуется > с -fpie. У нас этого делать нельзя? -fpie -- это опция компилятора. Линковщику должа ещё передоваться -pie. Как именно собирается бинарник? Можно лог? -- Regards, Kirill A. Shutemov + Belarus, Minsk + ALT Linux Team, http://www.altlinux.com/ [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-21 19:21 ` Kirill A. Shutemov @ 2008-05-21 20:44 ` Led 2008-05-21 21:49 ` Dmitry V. Levin 0 siblings, 1 reply; 20+ messages in thread From: Led @ 2008-05-21 20:44 UTC (permalink / raw) To: ALT Linux Team development discussions Wednesday, 21 May 2008 22:21:33 Kirill A. Shutemov написав: > On Wed, May 21, 2008 at 09:02:42PM +0300, Led wrote: > > Забавный случай: > > > > $ file ~/tmp/autofs-buildroot/usr/sbin/automount > > automount: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), for > > GNU/Linux 2.6.9, stripped > > > > ? > > Естественно, rpmbuild (fixup-libraries) делает ему "chmod 644" :( > > Нет, это не естественно. > shared object -- это и shared library и position independed executable. > В fixup-libraries есть эвристика для отделения мух от котлет. chmod, по > идее, должен делаться только для shared library. Нет там такой эвристики. > > > Насколько я понял, это происходит из-за того, что этот бинарник линкуется > > с -fpie. У нас этого делать нельзя? > > -fpie -- это опция компилятора. Линковщику должа ещё передоваться -pie. > Как именно собирается бинарник? Можно лог? Да, я опечатался: линкуется с -pie -- Led ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-21 20:44 ` Led @ 2008-05-21 21:49 ` Dmitry V. Levin 2008-05-21 22:06 ` Led 0 siblings, 1 reply; 20+ messages in thread From: Dmitry V. Levin @ 2008-05-21 21:49 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 928 bytes --] On Wed, May 21, 2008 at 11:44:39PM +0300, Led wrote: > Wednesday, 21 May 2008 22:21:33 Kirill A. Shutemov написав: > > On Wed, May 21, 2008 at 09:02:42PM +0300, Led wrote: > > > Забавный случай: > > > > > > $ file ~/tmp/autofs-buildroot/usr/sbin/automount > > > automount: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), for > > > GNU/Linux 2.6.9, stripped > > > > > > ? > > > Естественно, rpmbuild (fixup-libraries) делает ему "chmod 644" :( > > > > Нет, это не естественно. > > shared object -- это и shared library и position independed executable. > > В fixup-libraries есть эвристика для отделения мух от котлет. chmod, по > > идее, должен делаться только для shared library. > > Нет там такой эвристики. Я эту эвристику туда поместил. Если её оттуда не убрали, то она там есть. Если бы её не было, то ничего бы не работало. Маловероятно, но, возможно, эвристика дала сбой? -- ldv [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-21 21:49 ` Dmitry V. Levin @ 2008-05-21 22:06 ` Led 2008-05-21 22:34 ` Led 2008-05-21 23:41 ` Dmitry V. Levin 0 siblings, 2 replies; 20+ messages in thread From: Led @ 2008-05-21 22:06 UTC (permalink / raw) To: ALT Linux Team development discussions Thursday, 22 May 2008 00:49:17 Dmitry V. Levin написав: > On Wed, May 21, 2008 at 11:44:39PM +0300, Led wrote: > > Wednesday, 21 May 2008 22:21:33 Kirill A. Shutemov написав: > > > On Wed, May 21, 2008 at 09:02:42PM +0300, Led wrote: > > > > Забавный случай: > > > > > > > > $ file ~/tmp/autofs-buildroot/usr/sbin/automount > > > > automount: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), > > > > for GNU/Linux 2.6.9, stripped > > > > > > > > ? > > > > Естественно, rpmbuild (fixup-libraries) делает ему "chmod 644" :( > > > > > > Нет, это не естественно. > > > shared object -- это и shared library и position independed executable. > > > В fixup-libraries есть эвристика для отделения мух от котлет. chmod, по > > > идее, должен делаться только для shared library. > > > > Нет там такой эвристики. > > Я эту эвристику туда поместил. Если её оттуда не убрали, то она там есть. > Если бы её не было, то ничего бы не работало. > > Маловероятно, но, возможно, эвристика дала сбой? Я ведь не придумал. Я поставил "затычки" перед fixup-libraries и после него. До fixup-libraries - 755, после 644. Да и на консоль выводит, что /usr/sbin/automount "чмодит" в 644. Могу полный лог сборки прикрепить, если в рассылку пропустят. Или возьмите autofs-5.0.3 и соберите. Мне не сложно, я могу легко оторвать -pie - потому и спроисил здесь (может у нас rpmbuild ещё не умеет такое пропускать) -- Led ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-21 22:06 ` Led @ 2008-05-21 22:34 ` Led 2008-05-21 23:41 ` Dmitry V. Levin 1 sibling, 0 replies; 20+ messages in thread From: Led @ 2008-05-21 22:34 UTC (permalink / raw) To: ALT Linux Team development discussions Thursday, 22 May 2008 01:06:54 Led написав: > Thursday, 22 May 2008 00:49:17 Dmitry V. Levin написав: > > On Wed, May 21, 2008 at 11:44:39PM +0300, Led wrote: > > > Wednesday, 21 May 2008 22:21:33 Kirill A. Shutemov написав: > > > > On Wed, May 21, 2008 at 09:02:42PM +0300, Led wrote: > > > > > Забавный случай: > > > > > > > > > > $ file ~/tmp/autofs-buildroot/usr/sbin/automount > > > > > automount: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), > > > > > for GNU/Linux 2.6.9, stripped > > > > > > > > > > ? > > > > > Естественно, rpmbuild (fixup-libraries) делает ему "chmod 644" :( > > > > > > > > Нет, это не естественно. > > > > shared object -- это и shared library и position independed > > > > executable. В fixup-libraries есть эвристика для отделения мух от > > > > котлет. chmod, по идее, должен делаться только для shared library. > > > > > > Нет там такой эвристики. > > > > Я эту эвристику туда поместил. Если её оттуда не убрали, то она там > > есть. Если бы её не было, то ничего бы не работало. > > > > Маловероятно, но, возможно, эвристика дала сбой? > > Я ведь не придумал. Я поставил "затычки" перед fixup-libraries и после > него. До fixup-libraries - 755, после 644. Да и на консоль выводит, > что /usr/sbin/automount "чмодит" в 644. Вот этот фрагмент: + /usr/lib/rpm/brp-alt Cleaning files in /home/led/tmp/autofs-buildroot (auto) mode of `./usr/sbin/automount' changed to 0644 (rw-r--r--) mode of `./usr/lib64/autofs/mount_afs.so' changed to 0644 (rw-r--r--) .... и т.д. > Могу полный лог сборки прикрепить, > если в рассылку пропустят. Или возьмите autofs-5.0.3 и соберите. > > Мне не сложно, я могу легко оторвать -pie - потому и спроисил здесь (может > у нас rpmbuild ещё не умеет такое пропускать) -- Led ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-21 22:06 ` Led 2008-05-21 22:34 ` Led @ 2008-05-21 23:41 ` Dmitry V. Levin 2008-05-22 0:04 ` Led 1 sibling, 1 reply; 20+ messages in thread From: Dmitry V. Levin @ 2008-05-21 23:41 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 1635 bytes --] On Thu, May 22, 2008 at 01:06:54AM +0300, Led wrote: > Thursday, 22 May 2008 00:49:17 Dmitry V. Levin написав: > > On Wed, May 21, 2008 at 11:44:39PM +0300, Led wrote: > > > Wednesday, 21 May 2008 22:21:33 Kirill A. Shutemov написав: > > > > On Wed, May 21, 2008 at 09:02:42PM +0300, Led wrote: > > > > > Забавный случай: > > > > > > > > > > $ file ~/tmp/autofs-buildroot/usr/sbin/automount > > > > > automount: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), > > > > > for GNU/Linux 2.6.9, stripped > > > > > > > > > > ? > > > > > Естественно, rpmbuild (fixup-libraries) делает ему "chmod 644" :( > > > > > > > > Нет, это не естественно. > > > > shared object -- это и shared library и position independed executable. > > > > В fixup-libraries есть эвристика для отделения мух от котлет. chmod, по > > > > идее, должен делаться только для shared library. > > > > > > Нет там такой эвристики. > > > > Я эту эвристику туда поместил. Если её оттуда не убрали, то она там есть. > > Если бы её не было, то ничего бы не работало. > > > > Маловероятно, но, возможно, эвристика дала сбой? > > Я ведь не придумал. Я поставил "затычки" перед fixup-libraries и после него. > До fixup-libraries - 755, после 644. Да и на консоль выводит, > что /usr/sbin/automount "чмодит" в 644. Могу полный лог сборки прикрепить, В этом нет смысла. > если в рассылку пропустят. Или возьмите autofs-5.0.3 и соберите. Где можно взять? > Мне не сложно, я могу легко оторвать -pie - потому и спроисил здесь (может у > нас rpmbuild ещё не умеет такое пропускать) Умеет, не надо -pie отрывать. -- ldv [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-21 23:41 ` Dmitry V. Levin @ 2008-05-22 0:04 ` Led 2008-05-22 5:02 ` Kirill A. Shutemov 0 siblings, 1 reply; 20+ messages in thread From: Led @ 2008-05-22 0:04 UTC (permalink / raw) To: ALT Linux Team development discussions Thursday, 22 May 2008 02:41:59 Dmitry V. Levin написав: > On Thu, May 22, 2008 at 01:06:54AM +0300, Led wrote: > > Thursday, 22 May 2008 00:49:17 Dmitry V. Levin написав: > > > On Wed, May 21, 2008 at 11:44:39PM +0300, Led wrote: > > > > Wednesday, 21 May 2008 22:21:33 Kirill A. Shutemov написав: > > > > > On Wed, May 21, 2008 at 09:02:42PM +0300, Led wrote: > > > > > > Забавный случай: > > > > > > > > > > > > $ file ~/tmp/autofs-buildroot/usr/sbin/automount > > > > > > automount: ELF 64-bit LSB shared object, x86-64, version 1 > > > > > > (SYSV), for GNU/Linux 2.6.9, stripped > > > > > > > > > > > > ? > > > > > > Естественно, rpmbuild (fixup-libraries) делает ему "chmod 644" :( > > > > > > > > > > Нет, это не естественно. > > > > > shared object -- это и shared library и position independed > > > > > executable. В fixup-libraries есть эвристика для отделения мух от > > > > > котлет. chmod, по идее, должен делаться только для shared library. > > > > > > > > Нет там такой эвристики. > > > > > > Я эту эвристику туда поместил. Если её оттуда не убрали, то она там > > > есть. Если бы её не было, то ничего бы не работало. > > > > > > Маловероятно, но, возможно, эвристика дала сбой? > > > > Я ведь не придумал. Я поставил "затычки" перед fixup-libraries и после > > него. До fixup-libraries - 755, после 644. Да и на консоль выводит, > > что /usr/sbin/automount "чмодит" в 644. Могу полный лог сборки > > прикрепить, > > В этом нет смысла. > > > если в рассылку пропустят. Или возьмите autofs-5.0.3 и соберите. > > Где можно взять? autofs-5.0.3-alt0.1.src.rpm в /i/D Для проявления эффекта заменить в спеке: -%make_build DAEMON_CFLAGS= DAEMON_LDFLAGS= +%make_build > > > Мне не сложно, я могу легко оторвать -pie - потому и спроисил здесь > > (может у нас rpmbuild ещё не умеет такое пропускать) > > Умеет, не надо -pie отрывать. -- Led ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-22 0:04 ` Led @ 2008-05-22 5:02 ` Kirill A. Shutemov 2008-05-22 6:50 ` Led 0 siblings, 1 reply; 20+ messages in thread From: Kirill A. Shutemov @ 2008-05-22 5:02 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 2727 bytes --] On Thu, May 22, 2008 at 03:04:58AM +0300, Led wrote: > Thursday, 22 May 2008 02:41:59 Dmitry V. Levin написав: > > On Thu, May 22, 2008 at 01:06:54AM +0300, Led wrote: > > > Thursday, 22 May 2008 00:49:17 Dmitry V. Levin написав: > > > > On Wed, May 21, 2008 at 11:44:39PM +0300, Led wrote: > > > > > Wednesday, 21 May 2008 22:21:33 Kirill A. Shutemov написав: > > > > > > On Wed, May 21, 2008 at 09:02:42PM +0300, Led wrote: > > > > > > > Забавный случай: > > > > > > > > > > > > > > $ file ~/tmp/autofs-buildroot/usr/sbin/automount > > > > > > > automount: ELF 64-bit LSB shared object, x86-64, version 1 > > > > > > > (SYSV), for GNU/Linux 2.6.9, stripped > > > > > > > > > > > > > > ? > > > > > > > Естественно, rpmbuild (fixup-libraries) делает ему "chmod 644" :( > > > > > > > > > > > > Нет, это не естественно. > > > > > > shared object -- это и shared library и position independed > > > > > > executable. В fixup-libraries есть эвристика для отделения мух от > > > > > > котлет. chmod, по идее, должен делаться только для shared library. > > > > > > > > > > Нет там такой эвристики. > > > > > > > > Я эту эвристику туда поместил. Если её оттуда не убрали, то она там > > > > есть. Если бы её не было, то ничего бы не работало. > > > > > > > > Маловероятно, но, возможно, эвристика дала сбой? > > > > > > Я ведь не придумал. Я поставил "затычки" перед fixup-libraries и после > > > него. До fixup-libraries - 755, после 644. Да и на консоль выводит, > > > что /usr/sbin/automount "чмодит" в 644. Могу полный лог сборки > > > прикрепить, > > > > В этом нет смысла. > > > > > если в рассылку пропустят. Или возьмите autofs-5.0.3 и соберите. > > > > Где можно взять? > > autofs-5.0.3-alt0.1.src.rpm в /i/D > Для проявления эффекта заменить в спеке: > -%make_build DAEMON_CFLAGS= DAEMON_LDFLAGS= > +%make_build Эвристику ломает преждеверменный strip. Опция -s при линковке удаляет символ __preinit_array_end по которому shared library отделяется от position independed executable. -- Regards, Kirill A. Shutemov + Belarus, Minsk + ALT Linux Team, http://www.altlinux.com/ [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-22 5:02 ` Kirill A. Shutemov @ 2008-05-22 6:50 ` Led 2008-05-22 7:14 ` Kirill A. Shutemov 2008-05-30 22:47 ` Dmitry V. Levin 0 siblings, 2 replies; 20+ messages in thread From: Led @ 2008-05-22 6:50 UTC (permalink / raw) To: ALT Linux Team development discussions Thursday, 22 May 2008 08:02:03 Kirill A. Shutemov написав: > On Thu, May 22, 2008 at 03:04:58AM +0300, Led wrote: > > Thursday, 22 May 2008 02:41:59 Dmitry V. Levin написав: > > > On Thu, May 22, 2008 at 01:06:54AM +0300, Led wrote: > > > > Thursday, 22 May 2008 00:49:17 Dmitry V. Levin написав: > > > > > On Wed, May 21, 2008 at 11:44:39PM +0300, Led wrote: > > > > > > Wednesday, 21 May 2008 22:21:33 Kirill A. Shutemov написав: > > > > > > > On Wed, May 21, 2008 at 09:02:42PM +0300, Led wrote: > > > > > > > > Забавный случай: > > > > > > > > > > > > > > > > $ file ~/tmp/autofs-buildroot/usr/sbin/automount > > > > > > > > automount: ELF 64-bit LSB shared object, x86-64, version 1 > > > > > > > > (SYSV), for GNU/Linux 2.6.9, stripped > > > > > > > > > > > > > > > > ? > > > > > > > > Естественно, rpmbuild (fixup-libraries) делает ему "chmod > > > > > > > > 644" :( > > > > > > > > > > > > > > Нет, это не естественно. > > > > > > > shared object -- это и shared library и position independed > > > > > > > executable. В fixup-libraries есть эвристика для отделения мух > > > > > > > от котлет. chmod, по идее, должен делаться только для shared > > > > > > > library. > > > > > > > > > > > > Нет там такой эвристики. > > > > > > > > > > Я эту эвристику туда поместил. Если её оттуда не убрали, то она > > > > > там есть. Если бы её не было, то ничего бы не работало. > > > > > > > > > > Маловероятно, но, возможно, эвристика дала сбой? > > > > > > > > Я ведь не придумал. Я поставил "затычки" перед fixup-libraries и > > > > после него. До fixup-libraries - 755, после 644. Да и на консоль > > > > выводит, что /usr/sbin/automount "чмодит" в 644. Могу полный лог > > > > сборки прикрепить, > > > > > > В этом нет смысла. > > > > > > > если в рассылку пропустят. Или возьмите autofs-5.0.3 и соберите. > > > > > > Где можно взять? > > > > autofs-5.0.3-alt0.1.src.rpm в /i/D > > Для проявления эффекта заменить в спеке: > > -%make_build DAEMON_CFLAGS= DAEMON_LDFLAGS= > > +%make_build > > Эвристику ломает преждеверменный strip. Опция -s при линковке удаляет > символ __preinit_array_end по которому shared library отделяется от > position independed executable. Точно! Спасибо! Надо бы это где-то задокументировать. Потому как ИМХО неочевидно, что strip при сборке у нас, получается, недопустим :( -- Led ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-22 6:50 ` Led @ 2008-05-22 7:14 ` Kirill A. Shutemov 2008-05-22 8:15 ` [devel] [JT] " Andrey Rahmatullin 2008-05-30 22:53 ` [devel] " Dmitry V. Levin 2008-05-30 22:47 ` Dmitry V. Levin 1 sibling, 2 replies; 20+ messages in thread From: Kirill A. Shutemov @ 2008-05-22 7:14 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 3432 bytes --] On Thu, May 22, 2008 at 09:50:27AM +0300, Led wrote: > Thursday, 22 May 2008 08:02:03 Kirill A. Shutemov написав: > > On Thu, May 22, 2008 at 03:04:58AM +0300, Led wrote: > > > Thursday, 22 May 2008 02:41:59 Dmitry V. Levin написав: > > > > On Thu, May 22, 2008 at 01:06:54AM +0300, Led wrote: > > > > > Thursday, 22 May 2008 00:49:17 Dmitry V. Levin написав: > > > > > > On Wed, May 21, 2008 at 11:44:39PM +0300, Led wrote: > > > > > > > Wednesday, 21 May 2008 22:21:33 Kirill A. Shutemov написав: > > > > > > > > On Wed, May 21, 2008 at 09:02:42PM +0300, Led wrote: > > > > > > > > > Забавный случай: > > > > > > > > > > > > > > > > > > $ file ~/tmp/autofs-buildroot/usr/sbin/automount > > > > > > > > > automount: ELF 64-bit LSB shared object, x86-64, version 1 > > > > > > > > > (SYSV), for GNU/Linux 2.6.9, stripped > > > > > > > > > > > > > > > > > > ? > > > > > > > > > Естественно, rpmbuild (fixup-libraries) делает ему "chmod > > > > > > > > > 644" :( > > > > > > > > > > > > > > > > Нет, это не естественно. > > > > > > > > shared object -- это и shared library и position independed > > > > > > > > executable. В fixup-libraries есть эвристика для отделения мух > > > > > > > > от котлет. chmod, по идее, должен делаться только для shared > > > > > > > > library. > > > > > > > > > > > > > > Нет там такой эвристики. > > > > > > > > > > > > Я эту эвристику туда поместил. Если её оттуда не убрали, то она > > > > > > там есть. Если бы её не было, то ничего бы не работало. > > > > > > > > > > > > Маловероятно, но, возможно, эвристика дала сбой? > > > > > > > > > > Я ведь не придумал. Я поставил "затычки" перед fixup-libraries и > > > > > после него. До fixup-libraries - 755, после 644. Да и на консоль > > > > > выводит, что /usr/sbin/automount "чмодит" в 644. Могу полный лог > > > > > сборки прикрепить, > > > > > > > > В этом нет смысла. > > > > > > > > > если в рассылку пропустят. Или возьмите autofs-5.0.3 и соберите. > > > > > > > > Где можно взять? > > > > > > autofs-5.0.3-alt0.1.src.rpm в /i/D > > > Для проявления эффекта заменить в спеке: > > > -%make_build DAEMON_CFLAGS= DAEMON_LDFLAGS= > > > +%make_build > > > > Эвристику ломает преждеверменный strip. Опция -s при линковке удаляет > > символ __preinit_array_end по которому shared library отделяется от > > position independed executable. > > Точно! Спасибо! > Надо бы это где-то задокументировать. Потому как ИМХО неочевидно, что strip > при сборке у нас, получается, недопустим :( Я считаю, что это слабость эвристики. Нужно что-то делать. -- Regards, Kirill A. Shutemov + Belarus, Minsk + ALT Linux Team, http://www.altlinux.com/ [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] [JT] PIE Executables 2008-05-22 7:14 ` Kirill A. Shutemov @ 2008-05-22 8:15 ` Andrey Rahmatullin 2008-05-30 22:53 ` [devel] " Dmitry V. Levin 1 sibling, 0 replies; 20+ messages in thread From: Andrey Rahmatullin @ 2008-05-22 8:15 UTC (permalink / raw) To: devel Итого 55 строк цитирования (из них 8 старых шапок!) и 1 строка ответа. Прелестно. ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-22 7:14 ` Kirill A. Shutemov 2008-05-22 8:15 ` [devel] [JT] " Andrey Rahmatullin @ 2008-05-30 22:53 ` Dmitry V. Levin 2008-05-31 8:54 ` Kirill A. Shutemov 1 sibling, 1 reply; 20+ messages in thread From: Dmitry V. Levin @ 2008-05-30 22:53 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 858 bytes --] On Thu, May 22, 2008 at 10:14:05AM +0300, Kirill A. Shutemov wrote: > On Thu, May 22, 2008 at 09:50:27AM +0300, Led wrote: > > Thursday, 22 May 2008 08:02:03 Kirill A. Shutemov написав: [...] > > > Эвристику ломает преждеверменный strip. Опция -s при линковке удаляет > > > символ __preinit_array_end по которому shared library отделяется от > > > position independed executable. > > > > Точно! Спасибо! > > Надо бы это где-то задокументировать. Потому как ИМХО неочевидно, что strip > > при сборке у нас, получается, недопустим :( > > Я считаю, что это слабость эвристики. Нужно что-то делать. Дело в том, что pic и pie объекты действительно слабо отличаются, см. напр. diff -u /usr/lib/ldscripts/elf_i386.x{s,d} Единственное, что можно попробовать, это проверку порядка секций, у pie objects .interp должна быть первой. -- ldv [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-30 22:53 ` [devel] " Dmitry V. Levin @ 2008-05-31 8:54 ` Kirill A. Shutemov 2008-05-31 10:47 ` Dmitry V. Levin 0 siblings, 1 reply; 20+ messages in thread From: Kirill A. Shutemov @ 2008-05-31 8:54 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 1564 bytes --] On Sat, May 31, 2008 at 02:53:18AM +0400, Dmitry V. Levin wrote: > On Thu, May 22, 2008 at 10:14:05AM +0300, Kirill A. Shutemov wrote: > > On Thu, May 22, 2008 at 09:50:27AM +0300, Led wrote: > > > Thursday, 22 May 2008 08:02:03 Kirill A. Shutemov написав: > [...] > > > > Эвристику ломает преждеверменный strip. Опция -s при линковке удаляет > > > > символ __preinit_array_end по которому shared library отделяется от > > > > position independed executable. > > > > > > Точно! Спасибо! > > > Надо бы это где-то задокументировать. Потому как ИМХО неочевидно, что strip > > > при сборке у нас, получается, недопустим :( > > > > Я считаю, что это слабость эвристики. Нужно что-то делать. > > Дело в том, что pic и pie объекты действительно слабо отличаются, > см. напр. diff -u /usr/lib/ldscripts/elf_i386.x{s,d} > Единственное, что можно попробовать, это проверку порядка секций, > у pie objects .interp должна быть первой. А может внести в эти ld-скрипты маркеры, по каторым детект pic vs. pie был бы тривиальным? -- Regards, Kirill A. Shutemov + Belarus, Minsk + ALT Linux Team, http://www.altlinux.com/ [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-31 8:54 ` Kirill A. Shutemov @ 2008-05-31 10:47 ` Dmitry V. Levin 0 siblings, 0 replies; 20+ messages in thread From: Dmitry V. Levin @ 2008-05-31 10:47 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 1225 bytes --] On Sat, May 31, 2008 at 11:54:23AM +0300, Kirill A. Shutemov wrote: > On Sat, May 31, 2008 at 02:53:18AM +0400, Dmitry V. Levin wrote: > > On Thu, May 22, 2008 at 10:14:05AM +0300, Kirill A. Shutemov wrote: > > > On Thu, May 22, 2008 at 09:50:27AM +0300, Led wrote: > > > > Thursday, 22 May 2008 08:02:03 Kirill A. Shutemov написав: > > [...] > > > > > Эвристику ломает преждеверменный strip. Опция -s при линковке удаляет > > > > > символ __preinit_array_end по которому shared library отделяется от > > > > > position independed executable. > > > > > > > > Точно! Спасибо! > > > > Надо бы это где-то задокументировать. Потому как ИМХО неочевидно, что strip > > > > при сборке у нас, получается, недопустим :( > > > > > > Я считаю, что это слабость эвристики. Нужно что-то делать. > > > > Дело в том, что pic и pie объекты действительно слабо отличаются, > > см. напр. diff -u /usr/lib/ldscripts/elf_i386.x{s,d} > > Единственное, что можно попробовать, это проверку порядка секций, > > у pie objects .interp должна быть первой. > > А может внести в эти ld-скрипты маркеры, по каторым детект pic vs. pie был > бы тривиальным? Этот детект уже сейчас тривиальный, если бы не strip. -- ldv [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-22 6:50 ` Led 2008-05-22 7:14 ` Kirill A. Shutemov @ 2008-05-30 22:47 ` Dmitry V. Levin 2008-05-30 23:00 ` Led 1 sibling, 1 reply; 20+ messages in thread From: Dmitry V. Levin @ 2008-05-30 22:47 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 672 bytes --] On Thu, May 22, 2008 at 09:50:27AM +0300, Led wrote: > Thursday, 22 May 2008 08:02:03 Kirill A. Shutemov написав: [...] > > Эвристику ломает преждеверменный strip. Опция -s при линковке удаляет > > символ __preinit_array_end по которому shared library отделяется от > > position independed executable. > > Точно! Спасибо! > Надо бы это где-то задокументировать. Потому как ИМХО неочевидно, что strip > при сборке у нас, получается, недопустим :( У нас strip происходит автоматически по окончании %install, поэтому ручной strip не нужен, а иногда бывает и вреден. Например, для debuginfo он смертелен, поэтому FC/RH везде отпатчивают strip. -- ldv [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-30 22:47 ` Dmitry V. Levin @ 2008-05-30 23:00 ` Led 2008-05-30 23:05 ` Dmitry V. Levin 0 siblings, 1 reply; 20+ messages in thread From: Led @ 2008-05-30 23:00 UTC (permalink / raw) To: ALT Linux Team development discussions Saturday, 31 May 2008 01:47:44 Dmitry V. Levin написав: > On Thu, May 22, 2008 at 09:50:27AM +0300, Led wrote: > > Thursday, 22 May 2008 08:02:03 Kirill A. Shutemov написав: > > [...] > > > > Эвристику ломает преждеверменный strip. Опция -s при линковке удаляет > > > символ __preinit_array_end по которому shared library отделяется от > > > position independed executable. > > > > Точно! Спасибо! > > Надо бы это где-то задокументировать. Потому как ИМХО неочевидно, что > > strip при сборке у нас, получается, недопустим :( > > У нас strip происходит автоматически по окончании %install, поэтому ручной > strip не нужен, а иногда бывает и вреден. Например, для debuginfo он > смертелен, поэтому FC/RH везде отпатчивают strip. ИМХО логично. А у нас strip не срабатывает в %install, если %def_with debug или %def_enable debug ? -- Led ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [devel] PIE Executables 2008-05-30 23:00 ` Led @ 2008-05-30 23:05 ` Dmitry V. Levin 0 siblings, 0 replies; 20+ messages in thread From: Dmitry V. Levin @ 2008-05-30 23:05 UTC (permalink / raw) To: ALT Linux Team development discussions [-- Attachment #1: Type: text/plain, Size: 1062 bytes --] On Sat, May 31, 2008 at 02:00:24AM +0300, Led wrote: > Saturday, 31 May 2008 01:47:44 Dmitry V. Levin написав: > > On Thu, May 22, 2008 at 09:50:27AM +0300, Led wrote: > > > Thursday, 22 May 2008 08:02:03 Kirill A. Shutemov написав: > > > > [...] > > > > > > Эвристику ломает преждеверменный strip. Опция -s при линковке удаляет > > > > символ __preinit_array_end по которому shared library отделяется от > > > > position independed executable. > > > > > > Точно! Спасибо! > > > Надо бы это где-то задокументировать. Потому как ИМХО неочевидно, что > > > strip при сборке у нас, получается, недопустим :( > > > > У нас strip происходит автоматически по окончании %install, поэтому ручной > > strip не нужен, а иногда бывает и вреден. Например, для debuginfo он > > смертелен, поэтому FC/RH везде отпатчивают strip. > > ИМХО логично. > А у нас strip не срабатывает в %install, если > %def_with debug > или > %def_enable debug > ? При включённом debug автоматический strip блокируется. Есть ещё %set_strip_method и пр. -- ldv [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
end of thread, other threads:[~2008-05-31 10:47 UTC | newest] Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2008-05-21 18:02 [devel] PIE Executables Led 2008-05-21 18:16 ` Led 2008-05-21 18:24 ` Andrey Rahmatullin 2008-05-21 19:21 ` Kirill A. Shutemov 2008-05-21 20:44 ` Led 2008-05-21 21:49 ` Dmitry V. Levin 2008-05-21 22:06 ` Led 2008-05-21 22:34 ` Led 2008-05-21 23:41 ` Dmitry V. Levin 2008-05-22 0:04 ` Led 2008-05-22 5:02 ` Kirill A. Shutemov 2008-05-22 6:50 ` Led 2008-05-22 7:14 ` Kirill A. Shutemov 2008-05-22 8:15 ` [devel] [JT] " Andrey Rahmatullin 2008-05-30 22:53 ` [devel] " Dmitry V. Levin 2008-05-31 8:54 ` Kirill A. Shutemov 2008-05-31 10:47 ` Dmitry V. Levin 2008-05-30 22:47 ` Dmitry V. Levin 2008-05-30 23:00 ` Led 2008-05-30 23:05 ` Dmitry V. Levin
ALT Linux Team development discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \ devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru public-inbox-index devel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git