Добро пожаловать, Гость. Пожалуйста авторизуйтесь здесь.
FGHIGate на GaNJa NeTWoRK ST@Ti0N - Просмотр сообщения в эхоконференции RU.LINUX.CHAINIK
Введите FGHI ссылку:


Присутствуют сообщения из эхоконференции RU.LINUX.CHAINIK с датами от 15 Jul 13 07:24:14 до 25 Apr 24 19:14:34, всего сообщений: 3144
Ответить на сообщение К списку сообщений Предыдущее сообщение Следующее сообщение
= Сообщение: 2517 из 3144 ================================= RU.LINUX.CHAINIK =
От   : Rinat H. Sadretdinow             2:5020/620         13 Apr 19 21:28:30
Кому : Brother Rabbit                                      13 Apr 19 21:28:30
Тема : qico
FGHI : area://RU.LINUX.CHAINIK?msgid=2:5020/620+5cb22c65
На   : area://RU.LINUX.CHAINIK?msgid=2:460/5858+5cb20415
= Кодировка сообщения определена как: CP866 ==================================
Ответ: area://RU.LINUX.CHAINIK?msgid=2:5020/620+5cb23555
Ответ: area://RU.LINUX.CHAINIK?msgid=2:460/5858+5cb2bc7e
==============================================================================
Hello Brother!

13 Apr 19 18:44, you wrote to me:

RHS>> В log.c в функции chatlog_init строчку

[...]

BR> Hи то, ни то не помогло. :(
BR> Такое ощущение, что у меня что-то не установлено или слишком новая
BR> версия.

Во, в log.c ошибка пропала.

BR> In function 'snprintf',
BR>     inlined from 'closeqpkt' at ftn.c:276:2:
BR> /usr/include/bits/stdio2.h:64:10: error: call to
BR> __builtin___snprintf_chk will always overflow destination buffer
BR>    return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
BR>           ^

Зато появилась в ftn.c, причём точно такая же. Берём ftn.c, смотрим в нём функцию closeqpkt:

~~~
void closeqpkt(FILE *f, const ftnaddr_t *fa)
{
        char str[MAX_STRING+1];

        snprintf( str, MAX_STRING, "%s-%s/%s", qver( 0 ), qver( 1 ), qver( 2 ));
        closepkt( f, fa, str, cfgs( CFG_STATION ));
}
~~~

и правим её хотя бы так, изменяя определение 'char str' по аналогии с log.c не 'MAX_STRING + 1', а 'MAX_STRING + 5':

~~~

void closeqpkt(FILE *f, const ftnaddr_t *fa)
{
        char str[MAX_STRING + 5];

        snprintf( str, MAX_STRING, "%s-%s/%s", qver( 0 ), qver( 1 ), qver( 2 ));
        closepkt( f, fa, str, cfgs( CFG_STATION ));
}
~~~

и опять пробуем собрать. Скорее всего тут ошибки больше не будет, но может возникнуть аналогичная в другом месте. Там соответственно правим так же, только другую функцию и в другом файле.

Естественно это всё не "чистовой" вариант, это quick'n'dirty хак просто чтобы всё собралось (у меня в Fedora Linux 29 всё собирается и без таких вот напильников и шаманств, но что там конкретно у тебя -- не знаю, поэтому и предлагаю такое наколенное решение).

Bye!

--- GoldED+/LNX 1.1.5-b20170303
* Origin: -= Thunder Bird =- (2:5020/620)

К главной странице гейта
Powered by NoSFeRaTU`s FGHIGate
Открытие страницы: 0.021931 секунды