Main Page | Data Structures | File List | Data Fields | Globals

cctalk-server.h File Reference


Detailed Description

This is the header file for the cctalk server only prototypes.

Author:
Rod Boyce
Date:
05/11/04

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.

Functions

void cctalk_SvrDoSerialOperations (void)
 spin off threads to cctalk serial operations

teCCTALK_ERRORS cctalk_SvrChannelStatus (teCCTALK_CHANNEL eCctCh, int fdSock)
 Called on request for operation status.

void cctalk_SvrCloseOpsForSocket (int fdSock)
 Free cctalk operations associated with a socket.

teCCTALK_ERRORS cctalk_SvrForceClose (teCCTALK_CHANNEL eCctCh)
 Force closure for the cctalk channel.


Function Documentation

teCCTALK_ERRORS cctalk_SvrChannelStatus teCCTALK_CHANNEL  eCctCh,
int  fdSock
 

Called on request for operation status.

This function is called when the client wants to know if there are any cctalk operations either in the Tx queue waiting to be send or in the Rx queue waiting to be received or currently being processed. If there are cctalk operations at some stage of being processed that eCCTALK_CH_BUSY is returned otherwise eCCTALK_NO_DATA is returned.

Date:
05/11/04
Author:
Rod Boyce
Parameters:
eCctCh - The cctalk channel that the status is required of.
fdSock - The socket to look for operation in the cctalk channel.
Returns:
eCCTALK_CH_NO_DATA if there are no more cctalk operations for that channel or eCCTALK_CH_BUSY if there is still data to be sent or wait to be received.

History

Here is the call graph for this function:

void cctalk_SvrCloseOpsForSocket int  fdSock  ) 
 

Free cctalk operations associated with a socket.

What's happening here is that when a client closes without receiving all the cctalk transactions for itself this leaves memory behind that will never be deallocated. What must happen is that when the server closes the client socket it must free all the cctalk transactions that the client has not received. This memory leak was discovered while debugging the application. It is unlikely that this will happen in normal operation but it is still good to perform this check most of the code is written I just need to implement the top functionality. Look though the TX queue for cctalk operations as well. There is still one last problem the current operation may also be for this socket there is nothing that can be done until the current operation is finished so signal such and next time we process a cctalk operation delete this operation.

Date:
01/11/04
Author:
Rod Boyce
Parameters:
fdSock - the socket handle that we are closing

History

Here is the call graph for this function:

void cctalk_SvrDoSerialOperations void   ) 
 

spin off threads to cctalk serial operations

This function is called to perform a cctalk operation on each channel. Firstly a check is performed to see if any previous transaction has completed if so the results are posted on that channel. Next if there is any queued operations and all operations have finished another operation is started.

Date:
26/10/04
Author:
Rod Boyce

History

Here is the call graph for this function:

teCCTALK_ERRORS cctalk_SvrForceClose teCCTALK_CHANNEL  eCctCh  ) 
 

Force closure for the cctalk channel.

This code is called when the client want to force the closure of a cctalk channel. Any resources associated with this channel are released and the serial tty is closed.

Date:
08/11/04
Author:
Rod Boyce
Parameters:
eCctCh - The cctalk channel to close.
Returns:
An error code defined in teCCTALK_ERRORS

History

Here is the call graph for this function:


Generated on Thu Jan 20 16:12:41 2005 for Axis cctalk sub-system by doxygen 1.3.6