.\" -*- 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 "2 мая 2024 г." "Справочные страницы Linux 6.9.1" .SH ИМЯ netlink \- макросы netlink .SH БИБЛИОТЕКА Стандартная библиотека языка C (\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 Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, .UR https://www.gnu.org/licenses/gpl-3.0.html .UE версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ. .PP Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу .MT списка рассылки русских переводчиков .ME .