Yate
|
SS7 SCCP implementation. More...
#include <yatesig.h>
Public Types | |
enum | ReturnCauses { NoTranslationAddressNature = 0x00, NoTranslationSpecificAddress = 0x01, SubsystemCongestion = 0x02, SubsystemFailure = 0x03, UnequippedUser = 0x04, MtpFailure = 0x05, NetworkCongestion = 0x06, Unqualified = 0x07, ErrorInMessageTransport = 0x08, ErrorInLocalProcessing = 0x09, DestinationCanNotPerformReassembly = 0x0a, SccpFailure = 0x0b, HopCounterViolation = 0x0c, SegmentationNotSupported = 0x0d, SegmentationFailure = 0x0e, MessageChangeFailure = 0xf7, InvalidINSRoutingRequest = 0xf8, InvalidISNIRoutingRequest = 0xf9, UnauthorizedMessage = 0xfa, MessageIncompatibility = 0xfb, NotSupportedISNIRouting = 0xfc, RedundantISNIConstrainedRouting = 0xfd, ISNIIdentificationFailed = 0xfe } |
enum | Control { Status = 0x01, FullStatus = 0x02, EnableExtendedMonitoring = 0x03, DisableExtendedMonitoring = 0x04, EnablePrintMsg = 0x05, DisablePrintMsg = 0x06 } |
Public Member Functions | |
SS7SCCP (const NamedList &config) | |
~SS7SCCP () | |
virtual bool | initialize (const NamedList *config) |
virtual void | attach (SS7Layer3 *network) |
int | transmitMessage (SS7MsgSCCP *msg, bool local=false) |
virtual bool | managementStatus (Type type, NamedList ¶ms) |
virtual int | sendMessage (DataBlock &data, const NamedList ¶ms) |
virtual HandledMSU | receivedMSU (const SS7MSU &msu, const SS7Label &label, SS7Layer3 *network, int sls) |
virtual void | receivedUPU (SS7PointCode::Type type, const SS7PointCode node, SS7MSU::Services part, unsigned char cause, const SS7Label &label, int sls) |
virtual bool | control (NamedList ¶ms) |
int | segmentMessage (SS7MsgSCCP *origMsg, const SS7Label &label, bool local) |
const bool | ITU () const |
bool | ignoreUnknownAddrSignals () const |
virtual void | notify (SS7Layer3 *link, int sls) |
virtual void | routeStatusChanged (SS7PointCode::Type type, const SS7PointCode &node, SS7Route::State state) |
unsigned int | messagesSend () |
unsigned int | messagesReceived () |
unsigned int | errors () |
unsigned int | translations () |
const SS7PointCode * | getLocalPointCode () const |
SS7PointCode::Type | getLocalPointCodeType () |
int | getPackedPointCode () |
bool | isLayer3Up () |
Protected Member Functions | |
virtual void | destroyed () |
bool | extendedMonitoring () |
virtual void | timerTick (const Time &when) |
SS7MsgSccpReassemble::Return | reassembleSegment (SS7MsgSCCP *segment, const SS7Label &label, SS7MsgSCCP *&msg) |
virtual bool | isEndpoint () |
Friends | |
class | SCCPManagement |
SS7 SCCP implementation.
Implementation of SS7 Signalling Connection Control Part
~SS7SCCP | ( | ) |
Destructor
Attach a SS7 network or router to this service. Detach itself from the old one
network | Pointer to network or router to attach |
Reimplemented from SS7Layer4.
Query or modify component's settings or operational parameters
params | The list of parameters to query or change |
Reimplemented from SignallingComponent.
virtual void destroyed | ( | ) | [protected, virtual] |
This method is called to clean up and destroy the object after the reference counter becomes zero
Reimplemented from SS7Layer4.
unsigned int errors | ( | ) | [inline] |
Obtain the number of errors found by this SCCP instance
bool extendedMonitoring | ( | ) | [inline, protected] |
Helper method to check if this sccp needs extended monitoring
const SS7PointCode* getLocalPointCode | ( | ) | const [inline] |
Obtain the local SCCP point code
SS7PointCode::Type getLocalPointCodeType | ( | ) | [inline] |
Obtain local pointcode type
int getPackedPointCode | ( | ) | [inline] |
Helper method to obtain the packed pointcode
References SS7PointCode::pack().
bool ignoreUnknownAddrSignals | ( | ) | const [inline] |
Check if GT digit parser of should ignore unknown digits encoding
virtual bool initialize | ( | const NamedList * | config | ) | [virtual] |
virtual bool isEndpoint | ( | ) | [inline, protected, virtual] |
bool isLayer3Up | ( | ) | [inline] |
Helper method to check if attached layer 3 is up
const bool ITU | ( | ) | const [inline] |
Helper method to know if we use ITU or ANSI
virtual bool managementStatus | ( | Type | type, |
NamedList & | params | ||
) | [virtual] |
Receive management information from attached users.
type | The type of management message |
params | List of parameters (Affected subsystem [M]) |
Reimplemented from SCCP.
unsigned int messagesReceived | ( | ) | [inline] |
Obtain the number of messages received by this SCCP instance
unsigned int messagesSend | ( | ) | [inline] |
Obtain the number of messages send by this SCCP instance
Process a notification generated by the attached network layer
link | Network or linkset that generated the notification |
sls | Signalling Link that generated the notification, negative if none |
Reimplemented from SS7L3User.
SS7MsgSccpReassemble::Return reassembleSegment | ( | SS7MsgSCCP * | segment, |
const SS7Label & | label, | ||
SS7MsgSCCP *& | msg | ||
) | [protected] |
Reassemble a message segment
segment | The message segment |
label | The MTP routing label |
msg | Pointer to fill with the SS7MsgSccpReassemble who processed the message |
virtual HandledMSU receivedMSU | ( | const SS7MSU & | msu, |
const SS7Label & | label, | ||
SS7Layer3 * | network, | ||
int | sls | ||
) | [virtual] |
virtual void receivedUPU | ( | SS7PointCode::Type | type, |
const SS7PointCode | node, | ||
SS7MSU::Services | part, | ||
unsigned char | cause, | ||
const SS7Label & | label, | ||
int | sls | ||
) | [virtual] |
Notification for receiving User Part Unavailable
type | Type of Point Code |
node | Node on which the User Part is unavailable |
part | User Part (service) reported unavailable |
cause | Unavailability cause - Q.704 15.17.5 |
label | Routing label of the UPU message |
sls | Signaling link the UPU was received on |
Reimplemented from SS7L3User.
virtual void routeStatusChanged | ( | SS7PointCode::Type | type, |
const SS7PointCode & | node, | ||
SS7Route::State | state | ||
) | [virtual] |
Process route status changed notifications
type | Type of Point Code |
node | Destination node witch communication status has changed |
state | The new route state |
Reimplemented from SS7L3User.
int segmentMessage | ( | SS7MsgSCCP * | origMsg, |
const SS7Label & | label, | ||
bool | local | ||
) |
Message changeover procedure for segmentation purpose
origMsg | The original message |
label | MTP3 routing label |
local | True if the origMsg is local initiated |
virtual int sendMessage | ( | DataBlock & | data, |
const NamedList & | params | ||
) | [virtual] |
Method called periodically to check for timeouts Reimplemented from SignallingComponent
Reimplemented from SignallingComponent.
unsigned int translations | ( | ) | [inline] |
Obtain the number of GT translations made by this SCCP instance
int transmitMessage | ( | SS7MsgSCCP * | msg, |
bool | local = false |
||
) |