.\" -*- coding: UTF-8 -*- .\" This manpage copyright 1998 by Andi Kleen. .\" .\" SPDX-License-Identifier: GPL-1.0-or-later .\" .\" Based on the original comments from Alexey Kuznetsov .\" $Id: netlink.3,v 1.1 1999/05/14 17:17:24 freitag Exp $ .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH netlink 3 "31 октября 2023 г." "Linux man\-pages 6.06" .SH ИМЯ netlink \- макросы netlink .SH LIBRARY Standard C library (\fIlibc\fP, \fI\-lc\fP) .SH СИНТАКСИС .nf \fB#include \fP \fB#include \fP .P \fBint NLMSG_ALIGN(size_t \fP\fIlen\fP\fB);\fP \fBint NLMSG_LENGTH(size_t \fP\fIlen\fP\fB);\fP \fBint NLMSG_SPACE(size_t \fP\fIlen\fP\fB);\fP \fBvoid *NLMSG_DATA(struct nlmsghdr *\fP\fInlh\fP\fB);\fP \fBstruct nlmsghdr *NLMSG_NEXT(struct nlmsghdr *\fP\fInlh\fP\fB, int \fP\fIlen\fP\fB);\fP \fBint NLMSG_OK(struct nlmsghdr *\fP\fInlh\fP\fB, int \fP\fIlen\fP\fB);\fP \fBint NLMSG_PAYLOAD(struct nlmsghdr *\fP\fInlh\fP\fB, int \fP\fIlen\fP\fB);\fP .fi .SH ОПИСАНИЕ В \fI\fP описаны различные стандартные макросы для доступа или создания дейтаграмм netlink. По сути, они подобны макросам, определённым в \fBcmsg\fP(3) для обычных данных. Работа с буфером, передаваемом или получаемом из сокета netlink, должна выполняться только с помощью этих макросов. .TP \fBNLMSG_ALIGN\fP() Выравнивает длину сообщения netlink до корректного значения. .TP \fBNLMSG_LENGTH\fP() Рассматривает длину полезной нагрузки \fIlen\fP как аргумент и возвращает выравненную длину в поле \fInlmsg_len\fP структуры \fInlmsghdr\fP. .TP \fBNLMSG_SPACE\fP() Возвращает количество байтов сообщения netlink с полезной нагрузкой длинной \fIlen\fP. .TP \fBNLMSG_DATA\fP() Возвращает указатель на полезную нагрузку, относящуюся к указанной структуре \fInlmsghdr\fP. .TP .\" this is bizarre, maybe the interface should be fixed. \fBNLMSG_NEXT\fP() Get the next \fInlmsghdr\fP in a multipart message. The caller must check if the current \fInlmsghdr\fP didn't have the \fBNLMSG_DONE\fP set\[em]this function doesn't return NULL on end. The \fIlen\fP argument is an lvalue containing the remaining length of the message buffer. This macro decrements it by the length of the message header. .TP \fBNLMSG_OK\fP() Возвращает значение «истина», если сообщение netlink не обрезано и готово к обработке. .TP \fBNLMSG_PAYLOAD\fP() Возвращает длину полезной нагрузки, связанной с \fInlmsghdr\fP. .SH ВЕРСИИ В большинстве случаев лучше использовать netlink с помощью функций библиотеки \fIlibnetlink\fP, а не через низкоуровневый интерфейс ядра. .SH СТАНДАРТЫ Linux. .SH "СМ. ТАКЖЕ" \fBlibnetlink\fP(3), \fBnetlink\fP(7) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства был сделан Alex Nik , Azamat Hackimov , Dmitry Bolkhovskikh , Yuri Kozlov и Иван Павлов . .PP Этот перевод является бесплатной документацией; прочитайте .UR https://www.gnu.org/licenses/gpl-3.0.html Стандартную общественную лицензию GNU версии 3 .UE или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ. .PP Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на .MT man-pages-ru-talks@lists.sourceforge.net .ME .