33 #ifndef OPAL_IAX2_REMOTE_H 34 #define OPAL_IAX2_REMOTE_H 44 #include <ptlib/sockets.h> 46 #if OPAL_PTLIB_SSL_AES 47 #include <openssl/aes.h> 80 virtual void PrintOn(ostream & strm)
const;
169 PINDEX GetTimeStamp()
const;
172 PINDEX GetSequenceVal()
const;
177 PINDEX GetPlainSequence()
const;
180 virtual void PrintOn(ostream & strm)
const;
184 virtual Comparison Compare(
const PObject & obj)
const;
211 PINDEX GetFirstValue();
217 virtual void PrintOn(ostream & strm)
const;
225 void RemoveOldContiguousValues();
246 { ZeroAllValues(); };
252 void ZeroAllValues();
262 PBoolean IsFirstReplyFrame();
266 PBoolean IsSequenceNosZero();
269 void SetInSeqNo(PINDEX newVal);
272 void SetOutSeqNo(PINDEX newVal);
276 void SetInOutSeqNo(PINDEX inVal, PINDEX outVal);
307 PString AsString()
const;
310 virtual void PrintOn(ostream & strm)
const;
317 void AddWrapAroundValue(PINDEX newOffset);
353 void SetEncryptionOn (PBoolean newState =
true);
356 void SetEncryptionKey(PString & newKey);
359 void SetChallengeKey(PString & newKey);
362 const PString & EncryptionKey()
const;
365 const PString & ChallengeKey()
const;
368 PBoolean IsEncrypted()
const;
370 #if OPAL_PTLIB_SSL_AES 372 AES_KEY *AesEncryptKey();
375 AES_KEY *AesDecryptKey();
381 void CalculateAesKeys();
392 #if OPAL_PTLIB_SSL_AES 394 AES_KEY aesEncryptKey;
397 AES_KEY aesDecryptKey;
406 #endif // OPAL_IAX2_REMOTE_H void SetDestCallNumber(PINDEX newVal)
PBoolean encryptionEnabled
Definition: remote.h:390
void SetRemotePort(PINDEX newVal)
Definition: remote.h:111
PBoolean operator!=(IAX2Remote &other)
PString BuildOurConnectionToken()
PString BuildConnectionToken()
IncomingOrder
Definition: remote.h:236
PIPSocket::Address remoteAddress
Definition: remote.h:141
PMutex mutex
Definition: remote.h:334
void SetSourceCallNumber(PINDEX newVal)
Definition: remote.h:114
PBoolean operator==(IAX2Remote &other)
PString challengeKey
Definition: remote.h:387
PINDEX RemotePort()
Definition: remote.h:99
PINDEX DestCallNumber()
Definition: remote.h:72
void SetRemoteAddress(PIPSocket::Address &newVal)
Definition: remote.h:105
void Assign(IAX2Remote &)
PINDEX lastSentTimeStamp
Definition: remote.h:337
PINDEX destCallNumber
Definition: remote.h:138
IAX2SequenceNumbers()
Definition: remote.h:245
there is a missing frame, a VNAK condition
Definition: remote.h:238
IAX2PacketIdList receivedLog
Definition: remote.h:340
PBoolean IsFirstReply()
Definition: remote.h:314
PINDEX sourceCallNumber
Definition: remote.h:135
PINDEX outSeqNo
Definition: remote.h:331
PINDEX remotePort
Definition: remote.h:144
PIPSocket::Address RemoteAddress()
Definition: remote.h:88
PINDEX SourceCallNumber()
Definition: remote.h:77
PBoolean operator*=(IAX2Remote &other)
sequenceDefines
Definition: remote.h:323
PUInt64 value
Definition: remote.h:190
void SetRemoteAddress(int newVal)
Definition: remote.h:108
virtual ~IAX2SequenceNumbers()
Definition: remote.h:249
virtual ~IAX2Remote()
Definition: remote.h:68
perfect sequence number
Definition: remote.h:237
virtual void PrintOn(ostream &strm) const
PINDEX inSeqNo
Definition: remote.h:328
PString encryptionKey
Definition: remote.h:384