/* ****************************************************************************** * 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 ****************************************************************************** */ #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 **************************************************************************** */