ps2sdk  1.1
A collection of Open Source libraries used for developing applications on Sony's PlayStation 2® (PS2).
netman.c File Reference
#include <errno.h>
#include <string.h>
#include <kernel.h>
#include <netman.h>
#include <netman_rpc.h>
#include "internal.h"
#include "rpc_client.h"
#include "rpc_server.h"
+ Include dependency graph for netman.c:

Go to the source code of this file.

Functions

void NetManToggleGlobalNetIFLinkState (unsigned char state)
 
int NetManGetGlobalNetIFLinkState (void)
 
void NetManUpdateStackNIFLinkState (void)
 
int NetManInit (void)
 
void NetManDeinit (void)
 
int NetManRegisterNetworkStack (const struct NetManNetProtStack *stack)
 
void NetManUnregisterNetworkStack (void)
 
void NetManNetIFXmit (void)
 
int NetManIoctl (unsigned int command, void *arg, unsigned int arg_len, void *output, unsigned int length)
 
void * NetManNetProtStackAllocRxPacket (unsigned int length, void **payload)
 
void NetManNetProtStackFreeRxPacket (void *packet)
 
void NetManNetProtStackEnQRxPacket (void *packet)
 
int NetManTxPacketNext (void **payload)
 
void NetManTxPacketDeQ (void)
 
int NetManTxPacketAfter (void **payload)
 
void NetManNetProtStackReallocRxPacket (void *packet, unsigned int length)
 

Variables

static struct NetManNetProtStack MainNetProtStack
 
static unsigned char IsInitialized =0
 
static unsigned char IsNetStackInitialized =0
 
static char NIFLinkState = 0
 

Function Documentation

◆ NetManDeinit()

void NetManDeinit ( void  )

Definition at line 58 of file netman.c.

59 {
60  if(IsInitialized)
61  {
63 
66  IsInitialized = 0;
67  }
68 }
void NetManUnregisterNetworkStack(void)
Definition: netman.c:92
static unsigned char IsInitialized
Definition: netman.c:12
void NetManDeinitRPCClient(void)
Definition: rpc_client.c:160
void NetManDeinitRPCServer(void)
Definition: rpc_server.c:236

References IsInitialized, NetManDeinitRPCClient(), NetManDeinitRPCServer(), and NetManUnregisterNetworkStack().

Referenced by main().

◆ NetManGetGlobalNetIFLinkState()

int NetManGetGlobalNetIFLinkState ( void  )

Definition at line 27 of file netman.c.

28 {
29  return NIFLinkState;
30 }
static char NIFLinkState
Definition: netman.c:13

References NIFLinkState.

◆ NetManInit()

int NetManInit ( void  )

Definition at line 43 of file netman.c.

44 {
45  int result;
46 
47  if(!IsInitialized)
48  {
49  if((result=NetManInitRPCServer())==0)
50  {
52  }
53  }else result = 0;
54 
55  return result;
56 }
s32 result
Definition: rpc_client.c:23
int NetManInitRPCClient(void)
Definition: rpc_client.c:57
int NetManInitRPCServer(void)
Definition: rpc_server.c:209

References IsInitialized, NetManInitRPCClient(), NetManInitRPCServer(), and result.

Referenced by main(), NetManRegisterNetworkStack(), and ps2ipInit().

◆ NetManIoctl()

int NetManIoctl ( unsigned int  command,
void *  arg,
unsigned int  arg_len,
void *  output,
unsigned int  length 
)

Definition at line 109 of file netman.c.

110 {
111  return IsInitialized?NetManRpcIoctl(command, arg, arg_len, output, length):-1;
112 }
s32 command
Definition: libpad.c:156
int NetManRpcIoctl(unsigned int command, void *arg, unsigned int arg_len, void *output, unsigned int length)
Definition: rpc_client.c:173

References command, IsInitialized, and NetManRpcIoctl().

Referenced by ethGetNetIFLinkStatus(), ethPrintLinkStatus(), and SMapIFInit().

◆ NetManNetIFXmit()

void NetManNetIFXmit ( void  )

Definition at line 103 of file netman.c.

104 {
105  if(IsInitialized)
107 }
void NetManRpcNetIFXmit(void)
Definition: rpc_client.c:284

References IsInitialized, and NetManRpcNetIFXmit().

Referenced by SMapLowLevelOutput().

◆ NetManNetProtStackAllocRxPacket()

void* NetManNetProtStackAllocRxPacket ( unsigned int  length,
void **  payload 
)

Definition at line 114 of file netman.c.

115 {
117 }
static unsigned char IsNetStackInitialized
Definition: netman.c:12
static struct NetManNetProtStack MainNetProtStack
Definition: netman.c:11
void *(* AllocRxPacket)(unsigned int size, void **payload)
Definition: netman.h:19
#define NULL
Definition: tamtypes.h:91

References NetManNetProtStack::AllocRxPacket, IsNetStackInitialized, MainNetProtStack, and NULL.

Referenced by NETMAN_RxThread(), and NetManRPCAllocRxBuffers().

◆ NetManNetProtStackEnQRxPacket()

void NetManNetProtStackEnQRxPacket ( void *  packet)

Definition at line 124 of file netman.c.

125 {
128 }
packet_t packet
Definition: font.c:24
void(* EnQRxPacket)(void *packet)
Definition: netman.h:21

References NetManNetProtStack::EnQRxPacket, IsNetStackInitialized, MainNetProtStack, and packet.

Referenced by NETMAN_RxThread().

◆ NetManNetProtStackFreeRxPacket()

void NetManNetProtStackFreeRxPacket ( void *  packet)

Definition at line 119 of file netman.c.

120 {
122 }
void(* FreeRxPacket)(void *packet)
Definition: netman.h:20

References NetManNetProtStack::FreeRxPacket, IsNetStackInitialized, MainNetProtStack, and packet.

◆ NetManNetProtStackReallocRxPacket()

void NetManNetProtStackReallocRxPacket ( void *  packet,
unsigned int  length 
)

Definition at line 146 of file netman.c.

147 {
149 }
void(* ReallocRxPacket)(void *packet, unsigned int size)
Definition: netman.h:25

References IsNetStackInitialized, MainNetProtStack, packet, and NetManNetProtStack::ReallocRxPacket.

Referenced by NETMAN_RxThread().

◆ NetManRegisterNetworkStack()

int NetManRegisterNetworkStack ( const struct NetManNetProtStack stack)

Definition at line 70 of file netman.c.

71 {
72  int result;
73 
74  if((result=NetManInit())==0)
75  {
77  {
79  {
80  memcpy(&MainNetProtStack, stack, sizeof(MainNetProtStack));
82  if((result=NetManRPCAllocRxBuffers()) == 0)
84  }
85  }
86  else result=0;
87  }
88 
89  return result;
90 }
void NetManUpdateStackNIFLinkState(void)
Definition: netman.c:32
int NetManInit(void)
Definition: netman.c:43
int NetManRPCRegisterNetworkStack(void)
Definition: rpc_client.c:109
int NetManRPCAllocRxBuffers(void)
Definition: rpc_server.c:65

References IsNetStackInitialized, MainNetProtStack, NetManInit(), NetManRPCAllocRxBuffers(), NetManRPCRegisterNetworkStack(), NetManUpdateStackNIFLinkState(), and result.

Referenced by ps2ipInit().

◆ NetManToggleGlobalNetIFLinkState()

void NetManToggleGlobalNetIFLinkState ( unsigned char  state)

Definition at line 20 of file netman.c.

21 {
22  NIFLinkState = state;
23 
25 }

References NetManUpdateStackNIFLinkState(), and NIFLinkState.

◆ NetManTxPacketAfter()

int NetManTxPacketAfter ( void **  payload)

Definition at line 141 of file netman.c.

142 {
143  return IsInitialized?MainNetProtStack.AfterTxPacket(payload):-1;
144 }
int(* AfterTxPacket)(void **payload)
Definition: netman.h:24

References NetManNetProtStack::AfterTxPacket, IsInitialized, and MainNetProtStack.

Referenced by NETMAN_TxThread().

◆ NetManTxPacketDeQ()

void NetManTxPacketDeQ ( void  )

Definition at line 135 of file netman.c.

136 {
137  if(IsInitialized)
139 }
void(* DeQTxPacket)(void)
Definition: netman.h:23

References NetManNetProtStack::DeQTxPacket, IsInitialized, and MainNetProtStack.

Referenced by NETMAN_TxThread().

◆ NetManTxPacketNext()

int NetManTxPacketNext ( void **  payload)

Definition at line 130 of file netman.c.

131 {
132  return IsInitialized?MainNetProtStack.NextTxPacket(payload):-1;
133 }
int(* NextTxPacket)(void **payload)
Definition: netman.h:22

References IsInitialized, MainNetProtStack, and NetManNetProtStack::NextTxPacket.

Referenced by NETMAN_TxThread().

◆ NetManUnregisterNetworkStack()

void NetManUnregisterNetworkStack ( void  )

Definition at line 92 of file netman.c.

93 {
95  {
97  memset(&MainNetProtStack, 0, sizeof(MainNetProtStack));
98 
100  }
101 }
int NetManRPCUnregisterNetworkStack(void)
Definition: rpc_client.c:142

References IsNetStackInitialized, MainNetProtStack, and NetManRPCUnregisterNetworkStack().

Referenced by NetManDeinit(), and ps2ipDeinit().

◆ NetManUpdateStackNIFLinkState()

void NetManUpdateStackNIFLinkState ( void  )

Variable Documentation

◆ IsInitialized

unsigned char IsInitialized =0
static

◆ IsNetStackInitialized

◆ MainNetProtStack

◆ NIFLinkState

char NIFLinkState = 0
static