Main Page Class Hierarchy Compound List File List Compound Members File Members

# transport.c File Reference

`#include <windows.h>`
`#include <sys/types.h>`
`#include <stdio.h>`
`#include <errno.h>`
`#include <string.h>`
`#include <time.h>`
`#include <process.h>`
`#include <transport.h>`
`#include "earthworm.h"`

Go to the source code of this file.

## Functions
void | tport_syserr (char *, long)
void | tport_buferror (short, char *)
void | tport_create (SHM_INFO *region, long nbytes, long memkey)
void | tport_destroy (SHM_INFO *region)
void | tport_attach (SHM_INFO *region, long memkey)
void | tport_detach (SHM_INFO *region)
int | tport_putmsg (SHM_INFO *region, MSG_LOGO *putlogo, long length, char *msg)
int | tport_getmsg (SHM_INFO *region, MSG_LOGO *getlogo, short nget, MSG_LOGO *logo, long *length, char *msg, long maxsize)
void | tport_putflag (SHM_INFO *region, int flag)
int | tport_getflag (SHM_INFO *region)
void | tport_bufthr (void *dummy)
int | tport_buffer (SHM_INFO *region1, SHM_INFO *region2, MSG_LOGO *getlogo, short nget, unsigned maxMsgSize, unsigned char module, unsigned char instid)
int | tport_copyfrom (SHM_INFO *region, MSG_LOGO *getlogo, short nget, MSG_LOGO *logo, long *length, char *msg, long maxsize, unsigned char *seq)
int | tport_copyto (SHM_INFO *region, MSG_LOGO *putlogo, long length, char *msg, unsigned char seq)
## Variables
short | Put_Init = 1
short | Get_Init = 1
short | Copyfrom_Init = 1
short | Copyto_Init = 1
volatile SHM_INFO * | PubRegion
volatile SHM_INFO * | BufRegion
volatile MSG_LOGO * | Getlogo
volatile short | Nget
volatile unsigned | MaxMsgSize
volatile char * | Message
unsigned char | MyModuleId
unsigned char | MyInstid
unsigned char | TypeError

## Function Documentation

void tport_attach | ( | SHM_INFO * | region,
|  | long | memkey
| ) |

| Definition at line 178 of file transport.c. References SHM_INFO::addr, SHM_INFO::key, and tport_syserr(). Referenced by MutableServerBase::Handler(), RingReaderServer::PrepareToRun(), MutableServerBase::Run(), WormServerBase::Run(), MutableServerBase::Stacker(), and CMFCDialogModuleBase::StatusAndReadLoop().

void tport_buferror | ( | short | ,
|  | char * |
| ) |

| Definition at line 1385 of file transport.c. References MSG_LOGO::instid, MSG_LOGO::mod, MyInstid, MyModuleId, PUT_OK, tport_putmsg(), MSG_LOGO::type, and TypeError. Referenced by tport_bufthr().

int tport_buffer | ( | SHM_INFO * | region1,
|  | SHM_INFO * | region2,
|  | MSG_LOGO * | getlogo,
|  | short | nget,
|  | unsigned | maxMsgSize,
|  | unsigned char | module,
|  | unsigned char | instid
| ) |

| Definition at line 877 of file transport.c. References BufRegion, Getlogo, GetType(), MaxMsgSize, Message, MyInstid, MyModuleId, Nget, and PubRegion.

void tport_bufthr | ( | void * | dummy | ) |

| Definition at line 769 of file transport.c. References BufRegion, GET_MISS_LAPPED, GET_MISS_SEQGAP, GET_NONE, GET_NOTRACK, GET_OK, GET_TOOBIG, MSG_LOGO::instid, SHM_INFO::key, MSG_LOGO::mod, PubRegion, PUT_OK, PUT_TOOBIG, TERMINATE, tport_buferror(), tport_copyfrom(), tport_copyto(), tport_getflag(), tport_putflag(), and MSG_LOGO::type.

int tport_copyfrom | ( | SHM_INFO * | region,
|  | MSG_LOGO * | getlogo,
|  | short | nget,
|  | MSG_LOGO * | logo,
|  | long * | length,
|  | char * | msg,
|  | long | maxsize,
|  | unsigned char * | seq
| ) |

| Definition at line 934 of file transport.c. References MSG_TRACK::active, SHM_INFO::addr, Copyfrom_Init, FIRST_BYTE, GET_MISS_LAPPED, GET_MISS_SEQGAP, GET_NONE, GET_NOTRACK, GET_OK, GET_TOOBIG, MSG_LOGO::instid, SHM_INFO::key, SHM_HEAD::keyin, SHM_HEAD::keymax, SHM_HEAD::keyold, MSG_TRACK::keyout, MSG_TRACK::logo, TPORT_HEAD::logo, MSG_TRACK::memkey, MSG_LOGO::mod, NTRACK_GET, MSG_TRACK::seq, TPORT_HEAD::seq, TPORT_HEAD::size, TPORT_HEAD::start, MSG_LOGO::type, and WILD. Referenced by tport_bufthr().

int tport_copyto | ( | SHM_INFO * | region,
|  | MSG_LOGO * | putlogo,
|  | long | length,
|  | char * | msg,
|  | unsigned char | seq
| ) |

| Definition at line 1253 of file transport.c. References SHM_INFO::addr, Copyto_Init, FIRST_BYTE, SHM_INFO::key, SHM_HEAD::keyin, SHM_HEAD::keymax, SHM_HEAD::keyold, TPORT_HEAD::logo, PUT_OK, TPORT_HEAD::seq, TPORT_HEAD::size, TPORT_HEAD::start, and TPORT_FATAL. Referenced by tport_bufthr().

void tport_create | ( | SHM_INFO * | region,
|  | long | nbytes,
|  | long | memkey
| ) |

| Definition at line 75 of file transport.c. References SHM_INFO::addr, SHM_HEAD::flag, SHM_INFO::key, SHM_HEAD::keyin, SHM_HEAD::keymax, SHM_HEAD::keyold, SHM_HEAD::nbytes, and tport_syserr().

void tport_destroy | ( | SHM_INFO * | region | ) |

| Definition at line 145 of file transport.c. References SHM_INFO::addr, tport_putflag(), and tport_syserr().

void tport_detach | ( | SHM_INFO * | region | ) |

| Definition at line 236 of file transport.c. References SHM_INFO::addr, and tport_syserr(). Referenced by RingReaderServer::FinishedRunning(), MutableServerBase::Handler(), MutableServerBase::Run(), WormServerBase::Run(), MutableServerBase::Stacker(), CMFCDialogModuleBase::~CMFCDialogModuleBase(), MutableServerBase::~MutableServerBase(), and RingReaderServer::~RingReaderServer().

int tport_getflag | ( | SHM_INFO * | region | ) |

| Definition at line 756 of file transport.c. References SHM_INFO::addr, and SHM_HEAD::flag. Referenced by MutableServerBase::MainThreadActions(), WormServerBase::Run(), CMFCDialogModuleBase::StatusAndReadLoop(), and tport_bufthr().

int tport_getmsg | ( | SHM_INFO * | region,
|  | MSG_LOGO * | getlogo,
|  | short | nget,
|  | MSG_LOGO * | logo,
|  | long * | length,
|  | char * | msg,
|  | long | maxsize
| ) |

| Definition at line 440 of file transport.c. References MSG_TRACK::active, SHM_INFO::addr, FIRST_BYTE, Get_Init, GET_MISS, GET_NONE, GET_NOTRACK, GET_OK, GET_TOOBIG, MSG_LOGO::instid, SHM_INFO::key, SHM_HEAD::keyin, SHM_HEAD::keymax, SHM_HEAD::keyold, MSG_TRACK::keyout, MSG_TRACK::logo, TPORT_HEAD::logo, MSG_TRACK::memkey, MSG_LOGO::mod, NTRACK_GET, MSG_TRACK::seq, TPORT_HEAD::seq, TPORT_HEAD::size, TPORT_HEAD::start, MSG_LOGO::type, and WILD. Referenced by RingReaderServer::MainThreadActions(), MutableServerBase::Stacker(), and CMFCDialogModuleBase::StatusAndReadLoop().

void tport_putflag | ( | SHM_INFO * | region,
|  | int | flag
| ) |

| Definition at line 740 of file transport.c. References SHM_INFO::addr, and SHM_HEAD::flag. Referenced by tport_bufthr(), and tport_destroy().

int tport_putmsg | ( | SHM_INFO * | region,
|  | MSG_LOGO * | putlogo,
|  | long | length,
|  | char * | msg
| ) |

| Definition at line 267 of file transport.c. References SHM_INFO::addr, FIRST_BYTE, MSG_LOGO::instid, SHM_INFO::key, SHM_HEAD::keyin, SHM_HEAD::keymax, SHM_HEAD::keyold, MSG_TRACK::keyout, MSG_TRACK::logo, TPORT_HEAD::logo, MSG_TRACK::memkey, MSG_LOGO::mod, NTRACK_PUT, Put_Init, PUT_NOTRACK, PUT_OK, MSG_TRACK::seq, TPORT_HEAD::seq, TPORT_HEAD::size, TPORT_HEAD::start, TPORT_FATAL, and MSG_LOGO::type. Referenced by CMFCDialogModuleBase::SendStatus(), WormServerBase::SendStatus(), tport_buferror(), and MutableServerBase::TransmitResult().

void tport_syserr | ( | char * | ,
|  | long |
| ) |

| Definition at line 1414 of file transport.c. Referenced by tport_attach(), tport_create(), tport_destroy(), and tport_detach().

## Variable Documentation

volatile SHM_INFO* BufRegion

| Definition at line 62 of file transport.c. Referenced by tport_buffer(), and tport_bufthr().

short Copyfrom_Init = 1`[static]`

| Definition at line 49 of file transport.c. Referenced by tport_copyfrom().

short Copyto_Init = 1`[static]`

| Definition at line 50 of file transport.c. Referenced by tport_copyto().

short Get_Init = 1`[static]`

| Definition at line 48 of file transport.c. Referenced by tport_getmsg().

volatile MSG_LOGO* Getlogo

| Definition at line 63 of file transport.c. Referenced by tport_buffer().

volatile unsigned MaxMsgSize

| Definition at line 65 of file transport.c. Referenced by tport_buffer().

volatile char* Message

| Definition at line 66 of file transport.c. Referenced by tport_buffer().

unsigned char MyInstid

| Definition at line 68 of file transport.c. Referenced by tport_buferror(), and tport_buffer().

unsigned char MyModuleId`[static]`

| Definition at line 67 of file transport.c. Referenced by tport_buferror(), and tport_buffer().

volatile short Nget

| Definition at line 64 of file transport.c. Referenced by tport_buffer().

volatile SHM_INFO* PubRegion

| Definition at line 61 of file transport.c. Referenced by tport_buffer(), and tport_bufthr().

short Put_Init = 1`[static]`

| Definition at line 47 of file transport.c. Referenced by tport_putmsg().

unsigned char TypeError

| Definition at line 69 of file transport.c. Referenced by tport_buferror().