Files
m241Neelima/components/ip_net2-6.9/ipdhcpc6/src/ipdhcpc6_shell.h
T
2026-07-30 11:19:44 +05:30

147 lines
4.7 KiB
C

/*
******************************************************************************
* HEADER FILE
*
* Document no: @(#) $Name: VXWORKS_ITER40_2019102207 $ $RCSfile: ipdhcpc6_shell.h,v $ $Revision: 1.1 $
* $Source: /home/interpeak/CVSRoot/ipdhcpc6/src/ipdhcpc6_shell.h,v $
* $Author: joel $ $Date: 2006-08-24 11:04:58 $
* $State: Exp $ $Locker: $
*
* INTERPEAK_COPYRIGHT_STRING
* Design and implementation by Joel Hortelius <joel.hortelius@interpeak.se>
******************************************************************************
*/
#ifndef IPDHCPC6_SHELL_H
#define IPDHCPC6_SHELL__H
/*
****************************************************************************
* 1 DESCRIPTION
****************************************************************************
*/
/*
****************************************************************************
* 2 CONFIGURATION
****************************************************************************
*/
/*
****************************************************************************
* 3 INCLUDE FILES
****************************************************************************
*/
#ifdef __cplusplus
extern "C" {
#endif
/*
****************************************************************************
* 4 DEFINES
****************************************************************************
*/
/*
****************************************************************************
* 5 TYPES
****************************************************************************
*/
struct Ipdhcpc6_context;
struct Ipdhcpc6_tagcomm_buffer;
typedef struct Ipdhcpc6_shell_client
{
Ipcom_list next;
Ip_fd fd;
Ipdhcpc6_attr_readbuf_t rbuf;
} Ipdhcpc6_shell_client_t;
typedef struct Ipdhcpc6_shell_context
{
Ip_fd client_fd;
Ipcom_list head;
struct Ipdhcpc6_context *context;
} Ipdhcpc6_shell_context_t;
/*
****************************************************************************
* 6 FUNCTIONS
****************************************************************************
*/
/*
*===========================================================================
* ipdhcpc6_shell_context_alloc
*===========================================================================
* Description: Allocate a shell context
* Parameters: context - The DHCPC6 context.
* Returns: A shell context.
*
*/
IP_GLOBAL Ipdhcpc6_shell_context_t *ipdhcpc6_shell_context_alloc(struct Ipdhcpc6_context *context);
/*
*===========================================================================
* ipdhcpc6_shell_context_free
*===========================================================================
* Description: Free a shell context
* Parameters: shellctxp - Pointer to the DHCPC6 shellcontext.
* Returns:
*
*/
IP_GLOBAL void ipdhcpc6_shell_context_free(Ipdhcpc6_shell_context_t **shellctxp);
/*
*===========================================================================
* ipdhcpc6_shell_context_fdset_init
*===========================================================================
* Description: Initialize all file descriptors of this context
* Parameters: shellctx - Shell context
* rset - Read set to initialize.
* mfd - Maximum file descriptor.
* Returns:
*
*/
IP_GLOBAL void ipdhcpc6_shell_context_fdset_init(Ipdhcpc6_shell_context_t *shellctx,
Ip_fd_set *rset,
int *mfd);
/*
*===========================================================================
* ipdhcpc6_shell_context_fdset_process
*===========================================================================
* Description: Process all file descriptors of this context
* Parameters: shellctx - Shell context
* rset - Read set to initialize.
* status - Incoming status
* Returns: Outgoing status
*
*/
IP_GLOBAL int ipdhcpc6_shell_context_fdset_process(Ipdhcpc6_shell_context_t *shellctx,
Ip_fd_set *rset,
int status);
#ifdef __cplusplus
}
#endif
#endif
/*
****************************************************************************
* END OF FILE
****************************************************************************
*/