interfacing between transports written in different programming languages
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

46 lines
1.5 KiB

// this is the mandatory source for general TSCs
decl enum @name;
decl item @name;
decl hex is item (output=hex);
// the first octet is the transport id; for general values it is 0x00
// the first bit of the second octet is set if this is an error state
enum transport_status_code {
hex ready 0x00000000;
doc > non error states
hex connection_up 0x00000001;
hex message_delivered 0x00000002;
hex message_on_the_way 0x00000003;
hex could_not_deliver_resending 0x00000004;
doc > error states
hex connection_down 0x00800001 doc="sent by connection based transports";
hex some_recipients_unreachable 0x00800002;
hex no_recipients_reachable 0x00800003;
hex no_config 0x00800004;
hex config_incomplete_or_wrong 0x00800005;
hex no_send_config 0x00800006;
hex no_recv_config 0x00800007;
hex send_config_incomplete_or_wrong 0x00800008;
hex recv_config_incomplete_or_wrong 0x00800009;
hex network_timeout 0x0080000a;
hex could_not_deliver_giving_up 0x0080000b;
hex rx_queue_underrun 0x0080000c doc="no message left to be received";
hex tx_queue_overflow 0x0080000d doc="transmit queue is full";
doc > transport is shut down
hex shut_down 0x00ffffff;
include ./email.tsc
include ./rce.tsc
include ./pdl.tsc
include ./sctp.tsc
include ./cc.tsc
}