57 StateTable(NULL), RibDaemon(NULL)
110 cModule* catcher1 = this->getModuleByPath(
"^.^");
158 Enter_Method(
"startCACE()");
178 entry.getLocal().getApinstance(),
179 entry.getLocal().getAename(),
180 entry.getLocal().getAeinstance());
183 entry.getRemote().getApinstance(),
184 entry.getRemote().getAename(),
185 entry.getRemote().getAeinstance());
220 Enter_Method(
"receivePositiveConnectResponse()");
237 Enter_Method(
"receiveNegativeConnectResponse()");
248 if (this->maxConRetries <= entry->getCurrentConnectRetries()) {
256 entry->increaseCurrentConnectRetries();
262 Enter_Method(
"receiveConnectRequest()");
273 EV <<
"Enrollment status not found for "
298 Enter_Method(
"startEnrollment()");
314 Enter_Method(
"receiveStartEnrollmentResponse()");
347 Enter_Method(
"receiveStopEnrollmentRequest()");
395 Enter_Method(
"receiveStartOperationRequest()");
402 Enter_Method(
"receiveStartEnrollmentRequest()");
438 Enter_Method(
"receiveStopEnrollmentResponse()");
467 Enter_Method(
"receiveStartOperationResponse()");
475 enrollObj->setIsImmediate(
true);
486 Enter_Method(
"authenticate()");
512 Enter_Method(
"processNewConReq()");
666 cXMLElement* mainTag = NULL;
667 if (config != NULL && config->hasChildren() && config->getFirstChildWithTag(
ELEM_PREENROL))
670 EV <<
"configData parameter not initialized!" << endl;
674 cXMLElementList enrll = mainTag->getChildrenByTagName(
ELEM_SIMTIME);
675 for (cXMLElementList::const_iterator it = enrll.begin(); it != enrll.end(); ++it) {
676 cXMLElement* m = *it;
679 EV <<
"\nSimTime tag is missing time attribute!" << endl;
683 simtime_t cas = atof(m->getAttribute(
ATTR_TIME));
688 scheduleAt(cas, cmsg);
694 scheduleAt(cas, cmsg);
697 cXMLElementList coms = m->getChildren();
698 for (cXMLElementList::const_iterator jt = coms.begin(); jt != coms.end(); ++jt) {
699 cXMLElement* n = *jt;
705 EV <<
"\nError when parsing Connect/Release record" << endl;
721 cModule* ipc = this->getModuleByPath(
"^.^");
722 std::string ico, col;
727 default: {ico=
"status/cross"; col=
"red";
break;}
730 ipc->getDisplayString().setTagArg(
"i2", 0, ico.c_str());
731 ipc->getDisplayString().setTagArg(
"i2", 1, col.c_str());
736 if (msg->isSelfMessage()) {
739 EV <<
"Preallocation at time " << simTime() <<
" has " << apnip->size() <<
" elements" << endl;
740 while (!apnip->empty())
750 else if ( !opp_strcmp(msg->getName(),
MSG_ENRLREL) ) {
752 while (!apnip->empty())
simsignal_t sigEnrollmentFinish
virtual int32_t getAbsSyntax() const
EnrollCommands PreenrollConnects
Class representing flow object with attributes from specs.
void receiveStopEnrollmentResponse(CDAPMessage *msg)
const char * SIG_RIBD_StartEnrollmentRequest
const char * MSG_CONRESNEG
const APN & getAddress() const
void setIpcAddress(const APN &ipcAddress)
Setter of IPC Process address which should be unambiguous within DIF.
simsignal_t sigEnrollmentSendData
const APNamingInfo & getSrcApni() const
Gets read-only source APNamingInfo.
virtual void setAuth(const auth_t &auth)
simsignal_t sigEnrollmentStartEnrollRes
const char * PAR_AUTH_PASS
void receiveStartOperationResponse(CDAPMessage *msg)
virtual void handleMessage(cMessage *msg)
void setEnrollmentStatus(EnrollmentStateTableEntry::EnrollmentStatus status)
const char * SIG_ENROLLMENT_CACEDataSend
void receiveStartOperationRequest(CDAPMessage *msg)
virtual void setAuth(const auth_t &auth)
EnrollmentStateTable * StateTable
const char * SIG_RIBD_StartOperationResponse
const char * SIG_RA_MgmtFlowAllocated
void initSignalsAndListeners()
Application Process Name class.
void signalizeStartEnrollmentResponse(EnrollmentObj *obj)
simsignal_t sigEnrollmentStartOperRes
const APN & getIpcAddress() const
Getter of IPC Process address which should be unambiguous within DIF.
virtual APNamingInfo & getDst()
virtual bool receiveMgmtAllocateRequest(Flow *mgmtflow)=0
const char * SIG_ENROLLMENT_Finished
const char * SIG_FA_MgmtFlowAllocated
const char * MOD_ENROLLMENTTABLE
virtual void setSrcAddr(const Address &srcAddr)
const char * SIG_RIBD_StartEnrollmentResponse
virtual EnrollmentObj * dup() const
virtual void setAbsSyntax(int32_t absSyntax)
simsignal_t sigEnrollmentStartEnrollReq
virtual void setDst(const APNamingInfo &dst)
virtual void setAbsSyntax(int32_t absSyntax)
void insert(EnrollmentStateTableEntry entry)
void signalizeStopEnrollmentRequest(EnrollmentObj *obj)
void processConResPosi(EnrollmentStateTableEntry *entry, CDAPMessage *cmsg)
::omnetpp::opp_string authName
const char * MSG_CONRESPOS
void increaseCurrentConnectRetries()
const char * SIG_ENROLLMENT_StartEnrollmentRequest
const char * PAR_CONFIGDATA
void setIsImmediateEnrollment(bool immediate)
const APNamingInfo & getLocal() const
const std::string & getAename() const
Getter of AE name.
EnrollmentStateTableEntry * findEntryByDstAPN(const APN &apn)
void processConResNega(EnrollmentStateTableEntry *entry, CDAPMessage *cmsg)
const APN & getApn() const
Getter of APN.
void insertStateTableEntry(Flow *flow)
void signalizeCACESendData(CDAPMessage *cmsg)
void signalizeStartOperationResponse(OperationObj *obj)
virtual void setDst(const APNamingInfo &dst)
EnrollCommands PreenrollReleases
void receiveStartEnrollmentResponse(CDAPMessage *msg)
const char * MOD_RIBDAEMON
Define_Module(Enrollment)
const char * SIG_RIBD_StopEnrollmentResponse
LisEnrollmentStopEnrollRes * lisEnrollmentStopEnrollRes
APNamingInfo holds complete naming info for particular application process.
void processNewConReq(EnrollmentStateTableEntry *entry)
void signalizeEnrollmentFinished(EnrollmentStateTableEntry *entry)
void receiveNegativeConnectResponse(CDAPMessage *msg)
LisEnrollmentStartEnrollReq * lisEnrollmentStartEnrollReq
void startEnrollment(EnrollmentStateTableEntry *entry)
LisEnrollmentAllResPosi * lisEnrollmentAllResPosi
std::list< APNIPair > APNIPairs
virtual auth_t & getAuth()
const Address & getMyAddress() const
simsignal_t sigEnrollmentStartOperReq
bool isEnrolled(const APN &myApn)
const APNamingInfo & getRemote() const
virtual object_t & getObjectItem()
const char * SIG_RIBD_StopEnrollmentRequest
const char * SIG_ENROLLMENT_DataSend
void parseConfig(cXMLElement *config)
void processStopEnrollmentImmediate(EnrollmentStateTableEntry *entry)
void setCACEConStatus(EnrollmentStateTableEntry::CACEConnectionStatus status)
LisEnrollmentStopOperationReq * lisEnrollmentStartOperationReq
const char * MOD_FLOWALLOC
virtual object_t & getObjectItem()
const char * ELEM_PREENROL
LisEnrollmentConReq * lisEnrollmentConReq
void signalizeStartOperationRequest(OperationObj *obj)
const char * MSG_CONREQRETRY
LisEnrollmentStartEnrollRes * lisEnrollmentStartEnrollRes
const char * SIG_ENROLLMENT_StartOperationRequest
const std::string & getAeinstance() const
Getter of AE-instance attribute.
void receiveStartEnrollmentRequest(CDAPMessage *msg)
const char * SIG_RIBD_ConnectionResponsePositive
void processStopEnrollmentResponse(EnrollmentStateTableEntry *entry)
const char * SIG_ENROLLMENT_StartEnrollmentResponse
const std::string & getApinstance() const
Getter of AP-instance id.
const Address & getMyAddress() const
const char * ELEM_SIMTIME
bool getIsImmediateEnrollment()
void setMyAddress(const Address &addr)
const char * ELEM_CONNECT
LisEnrollmentStartOperationRes * lisEnrollmentStartOperationRes
EnrollmentStateTableEntry::CACEConnectionStatus getCACEConStatus() const
void receiveStopEnrollmentRequest(CDAPMessage *msg)
virtual APNamingInfo & getSrc()
const char * SIG_ENROLLMENT_StartOperationResponse
LisEnrollmentStopEnrollReq * lisEnrollmentStopEnrollReq
const char * SIG_RIBD_ConnectionRequest
const char * PAR_CON_RETRIES
virtual void setDstAddr(const Address &dstAddr)
const char * PAR_AUTH_TYPE
const char * SIG_ENROLLMENT_StopEnrollmentResponse
LisEnrollmentConResNega * lisEnrollmentConResNega
const APN & getApn() const
Getter of unique APN which is initialized during object construction.
virtual void setSrc(const APNamingInfo &src)
void startCACE(APNIPair *apnip)
const char * SIG_RIBD_ConnectionResponseNegative
const char * SIG_ENROLLMENT_StopEnrollmentRequest
virtual void setSrc(const APNamingInfo &src)
::omnetpp::opp_string authPassword
void updateEnrollmentDisplay(Enrollment::IconEnrolStatus status)
const char * PAR_AUTH_OTHER
const Address & getDstAddr() const
Gets source Address, which is the address of communication end-point.
const char * SIG_RIBD_StartOperationRequest
virtual object_t & getObjectItem()
::omnetpp::opp_string authOther
void signalizeStopEnrollmentResponse(EnrollmentObj *obj)
const char * PAR_AUTH_NAME
const std::string & getName() const
Gets APN string name representation.
virtual APNamingInfo & getSrc()
const Address & getSrcAddress() const
bool getIsImmediate() const
void authenticate(EnrollmentStateTableEntry *entry, CDAP_M_Connect *msg)
simsignal_t sigEnrollmentCACESendData
simsignal_t sigEnrollmentStopEnrollReq
void receivePositiveConnectResponse(CDAPMessage *msg)
virtual void setResult(const result_t &result)
LisEnrollmentConResPosi * lisEnrollmentConResPosi
const char * ELEM_RELEASE
Address class holds IPC Process identification.
const APNamingInfo & getDstApni() const
Gets read-only destination APNamingInfo.
simsignal_t sigEnrollmentStopEnrollRes
virtual object_t & getObjectItem()
const char * PAR_ISSELFENROL
EnrollmentStateTableEntry::EnrollmentStatus getEnrollmentStatus() const
void signalizeStartEnrollmentRequest(EnrollmentObj *obj)
virtual void initialize()
void receiveConnectRequest(CDAPMessage *msg)