Files
2026-07-30 11:19:44 +05:30

282 lines
5.9 KiB
C

/*
******************************************************************************
* HEADER FILE
*
* Document no: @(#) $Name: VXWORKS_ITER40_2019102207 $ $RCSfile: ipmipmn_cli.h,v $ $Revision: 1.1 $
* $Source: /home/interpeak/CVSRoot/ipmipmn/include/ipmipmn_cli.h,v $
* $Author: jhorteli $ $Date: 2009-03-31 14:56:56 $
* $State: Exp $ $Locker: $
*
* INTERPEAK_COPYRIGHT_STRING
* Design and implementation by Joel Hortelius <joel.hortelius@interpeak.se>
******************************************************************************
*/
#ifndef IPMIPMN_CLI_H
#define IPMIPMN_CLI_H
/*
****************************************************************************
* 1 DESCRIPTION
****************************************************************************
*/
/*
****************************************************************************
* 2 CONFIGURATION
****************************************************************************
*/
/*
****************************************************************************
* 3 INCLUDE FILES
****************************************************************************
*/
#include <private/ipmip4_cli.h>
#include <private/ipmipmn_api_cli.h>
#ifdef __cplusplus
extern "C" {
#endif
/*
****************************************************************************
* 4 DEFINES
****************************************************************************
*/
/*
****************************************************************************
* 5 TYPES
****************************************************************************
*/
struct Ipmip_attr;
struct Ipmip_lladdr;
/*
****************************************************************************
* 6 FUNCTIONS
****************************************************************************
*/
/*******************************************************************************
*
* ipmipmn_cli_connect - ipmipmn_cli_connect
*
* Connect to the foreign agent daemon.
*
* Parameters:
* \is
* \i daemon_info
* Will be filled in by the function
* \ie
*
* RETURNS: IP_TRUE on success
*
* ERRNO:
*
*/
IP_PUBLIC Ip_bool ipmipmn_cli_connect
(
Ipmip_cli_daemon_t *daemon_info
);
/*******************************************************************************
*
* ipmipmn_cli_node_get - ipmipmn_cli_node_get
*
* Retrieve information on a specific node
*
* Parameters:
* \is
* \i dameon
* Connection to the IPMIP6PM daemon
* \i req
* Request to use.
* \ie
*
* RETURNS: The RTA containing the node's attributes if found, or IP_NULL.
*
* ERRNO:
*
*/
IP_PUBLIC struct Ipmip_attr *ipmipmn_cli_node_get
(
Ipmip_cli_daemon_t *daemon,
Ipmip_cli_daemon_req_t *req
);
/*******************************************************************************
*
* ipmipmn_cli_node_setif - ipmipmn_cli_node_setif
*
* Set a specific interface name to be used
*
* Parameters:
* \is
* \i dameon
* Connection to the IPMIP6PM daemon
* \i ifname
* Interface name
* \ie
*
* RETURNS: IP_TRUE on success
*
* ERRNO:
*
*/
IP_PUBLIC Ip_bool ipmipmn_cli_node_setif
(
Ipmip_cli_daemon_t *daemon,
const char *ifname
);
/*******************************************************************************
*
* ipmipmn_cli_node_setif - ipmipmn_cli_node_setif
*
* Set a specific interface name to be used
*
* Parameters:
* \is
* \i dameon
* Connection to the IPMIP6PM daemon
* \i ifname
* Interface name
* \i fa
* foreign agent [may be set]
* \i ap
* access point [may be set]
* \ie
*
* RETURNS: IP_TRUE on success
*
* ERRNO:
*
*/
IP_PUBLIC Ip_bool ipmipmn_cli_node_llh_mt
(
Ipmip_cli_daemon_t *daemon,
const char *ifname,
Ip_u32 fa,
Ip_u32 ap
);
/*******************************************************************************
*
* ipmipmn_cli_request_set_access_point - ipmipmn_cli_request_set_access_point
*
* Set an access point identifier in the request
*
* Parameters:
* \is
* \i req
* Daemon request structure
* \i ap
* The access point
* \ie
*
* RETURNS: No return value
*
* ERRNO:
*
*/
IP_PUBLIC void ipmipmn_cli_request_set_access_point
(
Ipmip_cli_daemon_req_t *req,
Ip_u32 ap
);
/*******************************************************************************
*
* ipmipmn_cli_request_set_foreign_agent - ipmipmn_cli_request_set_foreign_agent
*
* Set an foreign agent identifier in the request
*
* Parameters:
* \is
* \i req
* Daemon request structure
* \i fa
* The foreign agent
* \ie
*
* RETURNS: No return value
*
* ERRNO:
*
*/
IP_PUBLIC void ipmipmn_cli_request_set_foreign_agent
(
Ipmip_cli_daemon_req_t *req,
Ip_u32 fa
);
/*******************************************************************************
*
* ipmipmn_cli_daemon_if_link_up - ipmipmn_cli_daemon_if_link_up
*
* Set a specific interface up
*
* Parameters:
* \is
* \i dameon
* Connection to the IPMIP6PM daemon
* \i ifname
* Interface name
* \ie
*
* RETURNS: IP_TRUE on success
*
* ERRNO:
*
*/
IP_PUBLIC Ip_bool ipmipmn_cli_daemon_if_link_up
(
Ipmip_cli_daemon_t *daemon,
const char *ifname
);
/*******************************************************************************
*
* ipmipmn_cli_daemon_if_link_down - ipmipmn_cli_daemon_if_link_down
*
* Set a specific interface down
*
* Parameters:
* \is
* \i dameon
* Connection to the IPMIP6PM daemon
* \i ifname
* Interface name
* \ie
*
* RETURNS: IP_TRUE on success
*
* ERRNO:
*
*/
IP_PUBLIC Ip_bool ipmipmn_cli_daemon_if_link_down
(
Ipmip_cli_daemon_t *daemon,
const char *ifname
);
#ifdef __cplusplus
}
#endif
#endif
/*
****************************************************************************
* END OF FILE
****************************************************************************
*/