"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "src/h235/h235chan.cxx" between
h323plus-1_27_0.tar.gz and h323plus-1_27_1.tar.gz

About: H.323 Plus offers libraries for voice (VoIP) and videoconferencing using H.323.

h235chan.cxx  (h323plus-1_27_0):h235chan.cxx  (h323plus-1_27_1)
skipping to change at line 115 skipping to change at line 115
v3data.m_algorithmOID = session.GetAlgorithmOID(); v3data.m_algorithmOID = session.GetAlgorithmOID();
v3data.IncludeOptionalField(H235_V3KeySyncMaterial::e_encryptedSessionKey); v3data.IncludeOptionalField(H235_V3KeySyncMaterial::e_encryptedSessionKey);
v3data.m_encryptedSessionKey = encryptedMediaKey; v3data.m_encryptedSessionKey = encryptedMediaKey;
sync.m_h235Key.EncodeSubType(h235key); sync.m_h235Key.EncodeSubType(h235key);
} }
PBoolean ReadEncryptionSync(const H245_EncryptionSync & sync, H323Channel & chan , H235Session & session) PBoolean ReadEncryptionSync(const H245_EncryptionSync & sync, H323Channel & chan , H235Session & session)
{ {
H235_H235Key h235key; H235_H235Key h235key;
sync.m_h235Key.DecodeSubType(h235key);
chan.SetDynamicRTPPayloadType(sync.m_synchFlag); if (sync.m_h235Key.DecodeSubType(h235key)) {
chan.SetDynamicRTPPayloadType(sync.m_synchFlag);
switch (h235key.GetTag()) { switch (h235key.GetTag()) {
case H235_H235Key::e_secureChannel: case H235_H235Key::e_secureChannel:
PTRACE(4,"H235Key\tSecureChannel not supported"); PTRACE(4,"H235Key\tSecureChannel not supported");
return false; return false;
case H235_H235Key::e_secureChannelExt: case H235_H235Key::e_secureChannelExt:
PTRACE(4,"H235Key\tSecureChannelExt not supported"); PTRACE(4,"H235Key\tSecureChannelExt not supported");
return false; return false;
case H235_H235Key::e_sharedSecret: case H235_H235Key::e_sharedSecret:
PTRACE(4,"H235Key\tShared Secret not supported"); PTRACE(4,"H235Key\tShared Secret not supported");
return false; return false;
case H235_H235Key::e_certProtectedKey: case H235_H235Key::e_certProtectedKey:
PTRACE(4,"H235Key\tProtected Key not supported"); PTRACE(4,"H235Key\tProtected Key not supported");
return false; return false;
case H235_H235Key::e_secureSharedSecret: case H235_H235Key::e_secureSharedSecret:
{ {
const H235_V3KeySyncMaterial & v3data = h235key; const H235_V3KeySyncMaterial & v3data = h235key;
if (!v3data.HasOptionalField(H235_V3KeySyncMaterial::e_algorithm if (!v3data.HasOptionalField(H235_V3KeySyncMaterial::e_algor
OID)) { ithmOID)) {
// the algo is required, but is really redundant // the algo is required, but is really redundant
PTRACE(3, "H235\tWarning: No algo set in encryptionSync"); PTRACE(3, "H235\tWarning: No algo set in encryptionSync"
);
}
if (v3data.HasOptionalField(H235_V3KeySyncMaterial::e_encryp
tedSessionKey)) {
PBYTEArray mediaKey = v3data.m_encryptedSessionKey;
return session.DecodeMediaKey(mediaKey);
}
} }
if (v3data.HasOptionalField(H235_V3KeySyncMaterial::e_encryptedS }
essionKey)) {
PBYTEArray mediaKey = v3data.m_encryptedSessionKey;
return session.DecodeMediaKey(mediaKey);
}
}
} }
return false; return false;
} }
PBoolean H323SecureRTPChannel::OnSendingPDU(H245_OpenLogicalChannel & open) cons t PBoolean H323SecureRTPChannel::OnSendingPDU(H245_OpenLogicalChannel & open) cons t
{ {
PTRACE(4, "H235RTP\tOnSendingPDU"); PTRACE(4, "H235RTP\tOnSendingPDU");
if (H323_RealTimeChannel::OnSendingPDU(open)) { if (H323_RealTimeChannel::OnSendingPDU(open)) {
if (connection.IsH245Master()) { if (connection.IsH245Master()) {
 End of changes. 4 change blocks. 
28 lines changed or deleted 30 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)