herm1t LIVE!ng room - December 23rd, 2010 [entries|archive|friends|userinfo]
herm1t

[ website | twilight corner in the herm1t's cave ]
[ userinfo | ljr userinfo ]
[ archive | journal archive ]

December 23rd, 2010

Меняем MD5 файла в базе RPM [Dec. 23rd, 2010|05:13 pm]
[Tags|, , , ]
[Current Mood |geeky]

Иногда очень хочется поменять что-нибудь в базе RPM, и так, чтобы rpm -V заткнулся. Делается это так:
int update_file(char *fn, char *new_md5, int new_len) )
Основная проблема была с SHA1 заголовка. rpmlib суровая штука - ни документации, ни примеров, ни проверки ошибок: шаг влево, шаг вправо - SIGSEGV (например, если заменить headerGetEntryMinMemory на headerModifyEntry ;-) А "right thing" - это сделать на headerCopy/Unload/Reload/Unload, вообщем я так и не понял, что с ним нужно сделать, чтобы "закомитить" все изменения и не оторвать его от transaction set. А так работает. Read more... )

Кстати, если кто пользуется integrity check, то базу полагается хранить на ro-носителе.

P.S. Это я к чему. Вот есть у меня звери, которые используют libc, но раз есть libc, значит есть и все остальное ;-) Типа того.

LinkLeave a comment

navigation
[ viewing | December 23rd, 2010 ]
[ go | Previous Day|Next Day ]