Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка kpi_protocol.h

Опции
Развертывание Target:

На этой странице

Ссылка kpi_protocol.h

Этот заголовок определяет API для взаимодействия с протоколами в ядре. KPIs в этом заголовочном файле может использоваться для взаимодействия с протоколами, уже существующими в штабеле. Эти KPIs могут использоваться для поддержки существующих протоколов по типам среды, исходно не поддерживающимся в ядре, таком как ATM.

Включенные заголовки

  • <sys/kernel_types.h>

  • <net/kpi_interface.h>

Функции

  • Объявление

    Objective C

    errno_t proto_inject ( protocol_family_t protocol, mbuf_t packet );

    Параметры

    protocol

    Протокол пакета.

    packet

    Первый пакет в цепочке пакетов, которые будут введены.

    Возвращаемое значение

    errno ошибка при отказе. Если нуль возвратов proto_inject, вызывающая сторона не ответственна за освобождение mbuf.

    Обсуждение

    Вводит пакет на указанном протоколе отовсюду. Для предотвращения рекурсии протокол, возможно, должен поставить в очередь пакет, который будет обработан позже.

    Оператор импорта

    Objective C

    #include <kpi_protocol.h>;

    Доступность

    Доступный в OS X v10.4 и позже.

  • Объявление

    Objective C

    errno_t proto_input ( protocol_family_t protocol, mbuf_t packet );

    Параметры

    protocol

    Протокол пакета.

    packet

    Первый пакет в цепочке пакетов, которые будут введены.

    Возвращаемое значение

    errno ошибка при отказе. Если нуль возвратов proto_input, вызывающая сторона не ответственна за освобождение mbuf.

    Обсуждение

    Вводит пакет на указанном протоколе от входного пути.

    Оператор импорта

    Objective C

    #include <kpi_protocol.h>;

    Доступность

    Доступный в OS X v10.4 и позже.

  • Объявление

    Objective C

    errno_t proto_register_plumber ( protocol_family_t proto_fam, ifnet_family_t if_fam, proto_plumb_handler plumb, proto_unplumb_handler unplumb );

    Параметры

    proto_fam

    Семейство протокола эти функции инфраструктуры обработает.

    if_fam

    Интерфейсная семья эти функции инфраструктуры обработает.

    plumb

    Функция для вызова для присоединения протокола к интерфейсу.

    unplumb

    Функция для вызова для отсоединения протокола к интерфейсу, может быть NULL, когда ifnet_detach_protocol будет использоваться для отсоединения протокола.

    Возвращаемое значение

    Ненулевое значение присоединения перестало работать.

    Обсуждение

    Позволяет вызывающей стороне указывать функции, вызванные, когда протокол присоединен к интерфейсу, принадлежащему указанной семье и когда отсоединяется тот протокол.

    Оператор импорта

    Objective C

    #include <kpi_protocol.h>;

    Доступность

    Доступный в OS X v10.4 и позже.

  • Объявление

    Objective C

    void proto_unregister_plumber ( protocol_family_t proto_fam, ifnet_family_t if_fam );

    Параметры

    proto_fam

    Семейство протокола эти инфраструктура функционирует дескриптор.

    if_fam

    Интерфейсная семья эти инфраструктура функционирует дескриптор.

    Обсуждение

    Не регистрирует ранее зарегистрированную функцию инфраструктуры.

    Оператор импорта

    Objective C

    #include <kpi_protocol.h>;

    Доступность

    Доступный в OS X v10.4 и позже.

Обратные вызовы

  • Объявление

    Objective C

    typedef errno_t ( *proto_plumb_handler)( ifnet_t ifp, protocol_family_t protocol);

    Параметры

    ifp

    Интерфейс протокол должен быть присоединен.

    protocol_family

    Протокол, который должен быть присоединен к интерфейсу.

    Возвращаемое значение

    Ненулевое значение присоединения перестало работать.

    Обсуждение

    proto_plumb_handler вызывают для присоединения протокола к интерфейсу. Типичный протокол вертикальная функция заполнил бы ifnet_attach_proto_param и вызвал бы ifnet_attach_protocol.

    Оператор импорта

    Objective C

    #include <kpi_protocol.h>;

    Доступность

    Доступный в OS X v10.4 и позже.

  • Объявление

    Objective C

    typedef void ( *proto_unplumb_handler)( ifnet_t ifp, protocol_family_t protocol);

    Параметры

    ifp

    Интерфейс протокол должен быть отсоединен от.

    protocol_family

    Протокол, который должен быть отсоединен от интерфейса.

    Обсуждение

    proto_unplumb_handler вызывают для отсоединения протокола от интерфейса. Типичная невертикальная функция вызвала бы ifnet_detach_protocol и выполнила бы любую необходимую очистку.

    Оператор импорта

    Objective C

    #include <kpi_protocol.h>;

    Доступность

    Доступный в OS X v10.4 и позже.