создаю IP пакет, выделил память с помощью malloc
посылаю IP пакет с помощью библиотеки libdnet, функцией ip_send
пытаюсь очистить с free, но память очищается до того как ip_send отправит пакет и получается что ничего не посылается
как мне защитить память от очистки пока ip_send не отправит пакет?
freebsd
>посылаю IP пакет с помощью библиотеки libdnet, функцией ip_send
>пытаюсь очистить с free, но память очищается до того как ip_send отправит
>пакет и получается что ничего не посылается
>как мне защитить память от очистки пока ip_send не отправит пакет?Не надо её защищать - если всё в порядке, ip_send сделает копию, которой потом пользуется. Если пакет не ушёл, кривость в другом месте.
Смотри, что вернул ip_send.
>>посылаю IP пакет с помощью библиотеки libdnet, функцией ip_send
>>пытаюсь очистить с free, но память очищается до того как ip_send отправит
>>пакет и получается что ничего не посылается
>>как мне защитить память от очистки пока ip_send не отправит пакет?
>
>Не надо её защищать - если всё в порядке, ip_send сделает копию,
>которой потом пользуется. Если пакет не ушёл, кривость в другом месте.
>
>
>Смотри, что вернул ip_send.тогда в чём может быть ещё кривость?
если убрать free то всё работает на ура, но пожирает память
если добавить free то ничего не работает ;)