Commit Graph

20 Commits

Author SHA1 Message Date
d82819892a Replaces SSLIdentity* with scoped_refptr<RTCCertificate> in the cricket::Transport layer.
Why the replacements? Mainly two reasons:
1) RTCCertificate owns the identity and as long as things are referencing the identity there should be a scoped_refptr reference to the RTCCertificate. Handing out raw pointers is less memory safe.
2) With the latest RFC, an RTCCertificate should be sufficient for specifying a crypto cert and the code should be updated to use RTCCertificate instead of SSLIdentity directly.

This replace work is split up into multiple CLs. In this CL...
- WebRtcSessionDescriptionFactory is updated to use RTCCertificate over SSLIdentity.
- WebRtcSessionDescriptionFactory::SignalCertificateReady is connected to WebRtcSession::OnCertificateReady and WebRtcSession is updated to use RTCCertificate.
- The cricket::Transport and related classes are updated to use RTCCertificate. These are called from WebRtcSession::OnCertificateReady.

BUG=webrtc:4927
R=tommi@webrtc.org, torbjorng@webrtc.org

Review URL: https://codereview.webrtc.org/1312643004 .

Cr-Commit-Position: refs/heads/master@{#9794}
2015-08-27 08:12:37 +00:00
87713d0fe6 RTCCertificates added to RTCConfiguration, used by WebRtcSession/-DescriptionFactory.
This CL allows you to, having generated one or more RTCCertificates, supply them to RTCConfiguration for CreatePeerConnection use. This means an SSLIdentity does not have to be generated with a DtlsIdentityStore[Interface/Impl] as part of the CreatePeerConnection steps because the certificate contains all the necessary information.

To create an RTCCertificate you have to do the identity generation yourself though. But you could reuse the same RTCCertificate for multiple connections.

BUG=webrtc:4927
R=tommi@webrtc.org, torbjorng@webrtc.org

Review URL: https://codereview.webrtc.org/1288033009 .

Cr-Commit-Position: refs/heads/master@{#9774}
2015-08-25 07:53:36 +00:00
5e56c5927e DtlsIdentityStoreInterface added and the implementation is called DtlsIdentityStoreImpl (previously named without the -Impl bit and without an interface).
DtlsIdentityStoreImpl is updated to take KeyType into account, something which will be relevant after this CL lands:
https://codereview.webrtc.org/1189583002

The DtlsIdentityService[Interface] classes are about to be removed (to be removed when Chromium no longer implements and uses the interface). This was an unnecessary layer of complexity. The FakeIdentityService is now instead a FakeDtlsIdentityStore.
Where a service was previously passed around, a store is now passed around.

Identity generation is now commonly performed using DtlsIdentityStoreInterface. Previously, if a service was not specified, WebRtcSessionDescriptionFactory could fall back on its own generation code. Now, a store has to be provided for generation to occur.

For more information about the steps being taken to land this without breaking Chromium, see referenced bug.

BUG=webrtc:4899
R=magjed@webrtc.org, tommi@webrtc.org

Review URL: https://codereview.webrtc.org/1176383004 .

Cr-Commit-Position: refs/heads/master@{#9696}
2015-08-11 08:33:27 +00:00
0f620f4e31 Make sure we process all pending offer/answer requests before terminating.
This fixes a bug in the WebRtcSessionDescriptionFactory where messages would be dropped or worse yet processed after the factory was deleted.

BUG=chromium:507307

Review URL: https://codereview.webrtc.org/1231823002

Cr-Commit-Position: refs/heads/master@{#9557}
2015-07-09 10:25:04 +00:00
61e00b0bca Create a in-memory DTLS identity store that keeps a free identity generated in the background.
BUG=4241
R=pthatcher@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=8576

Committed: https://code.google.com/p/webrtc/source/detail?r=8581

Review URL: https://webrtc-codereview.appspot.com/37889004

Cr-Commit-Position: refs/heads/master@{#8605}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8605 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-04 22:18:18 +00:00
be77872d2c Revert "Create a in-memory DTLS identity store that keeps a free identity generated in the background."
Breaking Chromium FYI.

TBR=pthatcher@webrtc.org

This reverts commit 369f68255ffd3d6f3e449e0defeae820cefd4f29.

BUG=4241
R=pthatcher@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=8576

Review URL: https://webrtc-codereview.appspot.com/37889004


Review URL: https://webrtc-codereview.appspot.com/47389004

Cr-Commit-Position: refs/heads/master@{#8583}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8583 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-04 00:19:16 +00:00
369f68255f Create a in-memory DTLS identity store that keeps a free identity generated in the background.
BUG=4241
R=pthatcher@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=8576

Review URL: https://webrtc-codereview.appspot.com/37889004

Cr-Commit-Position: refs/heads/master@{#8581}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8581 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-03 23:14:18 +00:00
8ad96605c1 Revert "Create a in-memory DTLS identity store that keeps a free identity generated in the background."
Test failure: http://chromegw/i/client.webrtc/builders/Linux32%20Release/builds/3557

This reverts commit df512cc8b73ff519dcdf63a2603ab312d3443402.

TBR=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/41089004

Cr-Commit-Position: refs/heads/master@{#8579}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8579 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-03 20:35:34 +00:00
df512cc8b7 Create a in-memory DTLS identity store that keeps a free identity generated in the background.
BUG=4241
R=pthatcher@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37889004

Cr-Commit-Position: refs/heads/master@{#8576}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8576 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-03 16:42:21 +00:00
5f93d0a140 Update libjingle license statements at top of talk files for consistency
BUG=2133
R=juberti@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/39559004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8105 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-20 21:36:13 +00:00
269fb4bc90 move xmpp and p2p to webrtc
Create a copy of talk/xmpp and talk/p2p under webrtc/libjingle/xmpp and
webrtc/p2p. Also makes libjingle use those version instead of the one in the talk folder.

BUG=3379

Review URL: https://webrtc-codereview.appspot.com/26999004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7549 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-28 22:20:11 +00:00
28100cb388 Reverts r7459 "Create a copy of talk/xmpp and talk/p2p under webrtc/libjingle/xmpp and webrtc/p2p."
BUG=N/A
TBR=niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/29829004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7472 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-17 22:03:39 +00:00
d1ba6d9cbf Create a copy of talk/xmpp and talk/p2p under webrtc/libjingle/xmpp and webrtc/p2p.
BUG=3379
R=niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/27709005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7459 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-15 17:30:28 +00:00
a09a99950e (Auto)update libjingle 73222930-> 73226398
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6891 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-13 17:26:08 +00:00
b18bf5e47d Adds the support of RTCOfferOptions for PeerConnectionInterface::CreateOffer.
Constraints are still supported for CreateOffer, but converted to RTCOfferOptions internally.

BUG=3282
R=pthatcher@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/20029004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6822 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-04 18:34:16 +00:00
d4e598d57a (Auto)update libjingle 72097588-> 72159069
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6799 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-29 17:36:52 +00:00
b90991dade Update libjingle 62472237->62550414
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5640 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-04 19:54:57 +00:00
364f204d16 Update talk to 56698267.
TBR=sergeyu@chromium.org

Review URL: https://webrtc-codereview.appspot.com/4119004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5143 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-20 21:49:41 +00:00
a59696b2a5 Update libjingle to 52300956
R=wu@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2213004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4744 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-13 23:48:58 +00:00
91053e7c5a Update libjingle to 50654631.
R=mallinath@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2000006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4519 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-10 07:18:04 +00:00