Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1368)

Side by Side Diff: talk/app/webrtc/peerconnectioninterface.h

Issue 1528843005: Add support for GCM cipher suites from RFC 7714. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Added PeerConnection tests using GCM ciphers, fixed passing of flag through DtlsTransportChannel. Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * libjingle 2 * libjingle
3 * Copyright 2012 Google Inc. 3 * Copyright 2012 Google Inc.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met: 6 * modification, are permitted provided that the following conditions are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright notice, 8 * 1. Redistributions of source code must retain the above copyright notice,
9 * this list of conditions and the following disclaimer. 9 * this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright notice, 10 * 2. Redistributions in binary form must reproduce the above copyright notice,
(...skipping 530 matching lines...) Expand 10 before | Expand all | Expand 10 after
541 // argument. 541 // argument.
542 class PeerConnectionFactoryInterface : public rtc::RefCountInterface { 542 class PeerConnectionFactoryInterface : public rtc::RefCountInterface {
543 public: 543 public:
544 class Options { 544 class Options {
545 public: 545 public:
546 Options() : 546 Options() :
547 disable_encryption(false), 547 disable_encryption(false),
548 disable_sctp_data_channels(false), 548 disable_sctp_data_channels(false),
549 disable_network_monitor(false), 549 disable_network_monitor(false),
550 network_ignore_mask(rtc::kDefaultNetworkIgnoreMask), 550 network_ignore_mask(rtc::kDefaultNetworkIgnoreMask),
551 ssl_max_version(rtc::SSL_PROTOCOL_DTLS_10) { 551 ssl_max_version(rtc::SSL_PROTOCOL_DTLS_10),
552 enable_gcm_ciphers(false) {
pthatcher1 2015/12/18 20:31:31 Can you call this enable_gcm_crypto_suites to be m
joachim 2015/12/19 15:26:23 Done.
552 } 553 }
553 bool disable_encryption; 554 bool disable_encryption;
554 bool disable_sctp_data_channels; 555 bool disable_sctp_data_channels;
555 bool disable_network_monitor; 556 bool disable_network_monitor;
556 557
557 // Sets the network types to ignore. For instance, calling this with 558 // Sets the network types to ignore. For instance, calling this with
558 // ADAPTER_TYPE_ETHERNET | ADAPTER_TYPE_LOOPBACK will ignore Ethernet and 559 // ADAPTER_TYPE_ETHERNET | ADAPTER_TYPE_LOOPBACK will ignore Ethernet and
559 // loopback interfaces. 560 // loopback interfaces.
560 int network_ignore_mask; 561 int network_ignore_mask;
561 562
562 // Sets the maximum supported protocol version. The highest version 563 // Sets the maximum supported protocol version. The highest version
563 // supported by both ends will be used for the connection, i.e. if one 564 // supported by both ends will be used for the connection, i.e. if one
564 // party supports DTLS 1.0 and the other DTLS 1.2, DTLS 1.0 will be used. 565 // party supports DTLS 1.0 and the other DTLS 1.2, DTLS 1.0 will be used.
565 rtc::SSLProtocolVersion ssl_max_version; 566 rtc::SSLProtocolVersion ssl_max_version;
567
568 // May GCM ciphers from RFC 7714 be used for SRTP? Only codecs supported by
569 // both endpoints will be used, GCM must be supported by both to be used.
pthatcher1 2015/12/18 20:31:31 Might be more clear as "Enable GCM crypto suites f
joachim 2015/12/19 15:26:23 Done.
570 bool enable_gcm_ciphers;
566 }; 571 };
567 572
568 virtual void SetOptions(const Options& options) = 0; 573 virtual void SetOptions(const Options& options) = 0;
569 574
570 // TODO(deadbeef): Remove this overload of CreatePeerConnection once clients 575 // TODO(deadbeef): Remove this overload of CreatePeerConnection once clients
571 // are moved to the new version. 576 // are moved to the new version.
572 virtual rtc::scoped_refptr<PeerConnectionInterface> CreatePeerConnection( 577 virtual rtc::scoped_refptr<PeerConnectionInterface> CreatePeerConnection(
573 const PeerConnectionInterface::RTCConfiguration& configuration, 578 const PeerConnectionInterface::RTCConfiguration& configuration,
574 const MediaConstraintsInterface* constraints, 579 const MediaConstraintsInterface* constraints,
575 PortAllocatorFactoryInterface* allocator_factory, 580 PortAllocatorFactoryInterface* allocator_factory,
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
677 CreatePeerConnectionFactory( 682 CreatePeerConnectionFactory(
678 rtc::Thread* worker_thread, 683 rtc::Thread* worker_thread,
679 rtc::Thread* signaling_thread, 684 rtc::Thread* signaling_thread,
680 AudioDeviceModule* default_adm, 685 AudioDeviceModule* default_adm,
681 cricket::WebRtcVideoEncoderFactory* encoder_factory, 686 cricket::WebRtcVideoEncoderFactory* encoder_factory,
682 cricket::WebRtcVideoDecoderFactory* decoder_factory); 687 cricket::WebRtcVideoDecoderFactory* decoder_factory);
683 688
684 } // namespace webrtc 689 } // namespace webrtc
685 690
686 #endif // TALK_APP_WEBRTC_PEERCONNECTIONINTERFACE_H_ 691 #endif // TALK_APP_WEBRTC_PEERCONNECTIONINTERFACE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698