[devel] I: новый libssl7

Evgeny Sinelnikov =?iso-8859-1?q?sin_=CE=C1_altlinux=2Eru?=
Сб Авг 9 14:17:29 MSD 2008


9 августа 2008 г. 9:53 пользователь Alexander Bokovoy <ab на altlinux.org> написал:
> 2008/8/9 Evgeny Sinelnikov <sin на altlinux.ru>:
>> Здравствуйте,
>>
>> В эти выходные планируется обновить openssl до версии 0.9.8h. В свете
>> того, что апстрим иногда не следит за своими сонеймами, новый openssl
>> бинарно несовместим с текущей сборкой в Сизифе. На текущий момент
>> библиотека предоставляется пакетом libssl6. Этот пакет планируется
>> сохранять неграничено долго. Но новые сборки будут проводится на
>> libssl7.
> А libssl6 -- это то, что нужно сторонним (проприетарным) пакетам,
> собранным с текущим openssl?

Вероятно, я не знаю таких, ибо пользоваться пока не приходилось. Но
работать они всё равно будут.

> Каком срок предыдущей жизни soname? Дело

Это вопрос к разработчикам openssl. Впрочем это не повод не обновлять
библиотеку, отвечающую за безопасность.

> в том, что помимо имеющихся в Сизифе приложений, которым обязательно
> нужно старое API (если они не переехали на новое), есть еще и ПО,
> которое внедренцы ставят поверх систем [в ближайшем будущем полученных
> из Сизифа]. Для такой системообразующей библиотеки это важный аспект.
>

В бранчах всё будет по прежнему. На Сизифе так же, если же потребуется
пересборка, приложения будут собираться на новом soname.

> Каким образом планируется добиться автоматического выбора libssl7 при
> сборке вместо libssl6 после попадания этого пакета в Сизиф?

Абсолютно таким же каким добились пересборки с libssl6 при обновлении
libssl4 два года назад - libssl-devel будет теперь работать с libssl7.

>
>> В плане пересборки с новым openssl могут возникнуть осложнения из-за
>> того, что теперь он собран с поддержкой kerberos, то есть слинкован с
>> библиотеками из пакета libkrb5. В связи с этим у пакета libssl-devel
>> появилась зависимость на пакет libkrb5-devel. Последнее, из-за
>> специфичности расположения заголовочных файлов в нашей сборке MIT
>> Kerberos, влечёт за собой следующую проблему - не все приложения
>> корректно выставляют CFLAGS из /usr/lib/pkgconfig/openssl.pc,
>> /usr/lib/pkgconfig/libssl.pc или /usr/lib/pkgconfig/libcrypto.pc.
>> Сейчас CFLAGS выглядит таким образом:
>> $ pkg-config libcrypto --cflags
>> -I/usr/include/krb5
> Можно составить список пакетов, которые перестанут собираться? Если их
> количество исчисляется десятком, то было бы неплохо перед отправкой
> libssl7 озаботиться помощью мейнтейнерам в виде патчей в багзиллу.
>

Список пакетов, который нужно пересобрать я приводил. Если бы там была
пара пакетов, то я бы у же и их исправил. Для некоторых мы так и
сделали, но 159 пакетов - это уже много. Вообще я думаю, что Сизиф
нужен именно в таких случаях, когда без централизованной сборки уже не
обойтись. Иначе, если сделать как вы предлагаете, я вынужден держать
свой форк Сизифа. Только вот если я сам на все пакеты патчи буду
накладывать, то это уже будет не Сизиф, а нечто вроде собственного
репозитория. С таким подходом можно и при обновлении gcc, например до
версии 4.3.X, потребовать пересобрать все ломающиеся пакеты и
предоставить нужные патчи.

>> Если ранее отсутствие этого не влияло, то сейчас приведёт к
>> несобираемости таких пакетов. В нашем случае могут перестать
>> собираться даже те пакеты, которые нормально могли бы быть собраны в
>> Fedora, где заголовочные файлы kerberos лежат в /usr/include, а не
>> вынесены в /usr/include/krb5, как у нас.
> Я считаю, что "вынос" в /usr/include/krb5 правилен -- нам еще heimdal
> содержать в скором будущем.

Но вот и ответ - та самая доля разумности, которая так неочевидна на
первый взгляд.


-- 
Sin (Sinelnikov Evgeny)


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