[devel] Q: Есть ли способ раскрыть макросы rpm не в спеке?

Aleksey Avdeev =?iso-8859-1?q?solo_=CE=C1_solin=2Espb=2Eru?=
Пт Авг 8 03:09:27 MSD 2008


Aleksey Avdeev пишет:
> Aleksey Avdeev пишет:
>> Alexey Tourbin пишет:
>>> On Sun, Jul 13, 2008 at 02:14:04PM +0400, Aleksey Avdeev wrote:
>>>> Aleksey Avdeev пишет:
>>>>> Alexey I. Froloff пишет:
>>>>>> * Aleksey Avdeev <solo@> [080713 07:55]:
>>>>>>>   Есть ли способы раскрытия rpm`овских макросов содержащихся в 
>>>>>>> стороннем
>>>>>>> файле (не в спеке)?
>> ...
>>> rpm --eval "$(cat file)"

   Некоторые файлы не переваривает.

>>
>>   Спасибо.
>>
>>   Задачу решил с помощью скрипта rpm-eval.sh (см.
>> <http://git.altlinux.org/people/solo/packages/?p=apache2.git;a=blob;f=rpm-eval.sh;h=ab82a670c624e997256ce9c03f997f70a64100d0;hb=21516cc349f80295459977d916c725e14012aebf>) 
>>
>> и следующего кода:
>>
>> find %buildroot%_sysconfdir original -type f -print0 | \
>>     xargs -r0i %SOURCE14 "{}"
>>
>>   Где %SOURCE14 -- скрипт rpm-eval.sh помещённый в пакет.
>>
>> PS: Похоже, что подобный скрипт стоит запоковать в какой нибудь
>> rpm-build-*...
> 
>   На некоторых файлах вылетает с диагностикой:
> 
> *** buffer overflow detected ***: rpm terminated
> ======= Backtrace: =========
> /lib64/libc.so.6(__chk_fail+0x2f)[0x2ae70b998d1f]
> /usr/lib64/librpmio-4.0.4.so(rpmExpand+0x66)[0x2ae70be32a16]
> rpm(parseSpec+0x5c9)[0x4026f1]
> /lib64/libc.so.6(__libc_start_main+0xf4)[0x2ae70b8e8cf4]
> rpm(parseSpec+0xb1)[0x4021d9]
> ======= Memory map: ========
> /usr/src/RPM/SOURCES/rpm-eval.sh: line 8:  4278 Aborted rpm --eval 
> "$(cat "$f")" > "$n"
> 
>   Придётся добавлять защиту...

   См. <https://bugzilla.altlinux.org/show_bug.cgi?id=16623>

-- 

С уважением. Алексей.


----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 552 байтов
Описание: OpenPGP digital signature
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20080808/5d3bfbda/attachment-0002.bin>


Подробная информация о списке рассылки Devel