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

Unified Diff: third_party/usrsctp/localchanges.patch

Issue 16196007: Enable SCTP in libjingle. (Closed) Base URL: https://src.chromium.org/svn/trunk/src/
Patch Set: Created 7 years, 6 months 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 side-by-side diff with in-line comments
Download patch
Index: third_party/usrsctp/localchanges.patch
===================================================================
--- third_party/usrsctp/localchanges.patch (revision 0)
+++ third_party/usrsctp/localchanges.patch (revision 0)
@@ -0,0 +1,246 @@
+diff -NcrB usrsctplib/netinet/sctp_auth.h overrides/usrsctplib/netinet/sctp_auth.h
+*** usrsctplib/netinet/sctp_auth.h 2013-06-10 15:17:59.452245360 -0700
+--- overrides/usrsctplib/netinet/sctp_auth.h 2013-06-10 15:16:39.541591630 -0700
+***************
+*** 38,43 ****
+--- 38,46 ----
+ #ifndef _NETINET_SCTP_AUTH_H_
+ #define _NETINET_SCTP_AUTH_H_
+
++ #ifdef SCTP_USE_NSS_SHA1
++ #include <netinet/sctp_sha1.h>
++ #endif
+
+ /* digest lengths */
+ #define SCTP_AUTH_DIGEST_LEN_SHA1 20
+diff -NcrB usrsctplib/netinet/sctp_nss_sha1.c overrides/usrsctplib/netinet/sctp_nss_sha1.c
+*** usrsctplib/netinet/sctp_nss_sha1.c 1969-12-31 16:00:00.000000000 -0800
+--- overrides/usrsctplib/netinet/sctp_nss_sha1.c 2013-06-10 15:16:39.541591630 -0700
+***************
+*** 0 ****
+--- 1,61 ----
++ /*-
++ * Copyright (c) 2001-2007, by Cisco Systems, Inc. All rights reserved.
++ * Copyright (c) 2008-2012, by Randall Stewart. All rights reserved.
++ * Copyright (c) 2008-2012, by Michael Tuexen. All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions are met:
++ *
++ * a) Redistributions of source code must retain the above copyright notice,
++ * this list of conditions and the following disclaimer.
++ *
++ * b) Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in
++ * the documentation and/or other materials provided with the distribution.
++ *
++ * c) Neither the name of Cisco Systems, Inc. nor the names of its
++ * contributors may be used to endorse or promote products derived
++ * from this software without specific prior written permission.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
++ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
++ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
++ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
++ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
++ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
++ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
++ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
++ * THE POSSIBILITY OF SUCH DAMAGE.
++ */
++
++ #ifdef __FreeBSD__
++ #include <sys/cdefs.h>
++ __FBSDID("$FreeBSD$");
++ #endif
++
++ #ifdef SCTP_USE_NSS_SHA1
++ #include <netinet/sctp_sha1.h>
++
++ void
++ SCTP_NSS_SHA1_Init(struct sha1_context *ctx)
++ {
++ ctx->pk11_ctx = PK11_CreateDigestContext(SEC_OID_SHA1);
++ PK11_DigestBegin(ctx->pk11_ctx);
++ }
++
++ void
++ SCTP_NSS_SHA1_Update(struct sha1_context *ctx, const unsigned char *ptr, int siz)
++ {
++ PK11_DigestOp(ctx->pk11_ctx, ptr, siz);
++ }
++
++ void
++ SCTP_NSS_SHA1_Final(unsigned char *digest, struct sha1_context *ctx)
++ {
++ unsigned int output_len = 0;
++ PK11_DigestFinal(ctx->pk11_ctx, digest, &output_len, sizeof(digest));
++ PK11_DestroyContext(ctx->pk11_ctx, PR_TRUE);
++ }
++ #endif
+diff -NcrB usrsctplib/netinet/sctp_nss_sha1.h overrides/usrsctplib/netinet/sctp_nss_sha1.h
+*** usrsctplib/netinet/sctp_nss_sha1.h 1969-12-31 16:00:00.000000000 -0800
+--- overrides/usrsctplib/netinet/sctp_nss_sha1.h 2013-06-10 15:16:39.541591630 -0700
+***************
+*** 0 ****
+--- 1,67 ----
++ /*-
++ * Copyright (c) 2001-2007, by Cisco Systems, Inc. All rights reserved.
++ * Copyright (c) 2008-2012, by Randall Stewart. All rights reserved.
++ * Copyright (c) 2008-2012, by Michael Tuexen. All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions are met:
++ *
++ * a) Redistributions of source code must retain the above copyright notice,
++ * this list of conditions and the following disclaimer.
++ *
++ * b) Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in
++ * the documentation and/or other materials provided with the distribution.
++ *
++ * c) Neither the name of Cisco Systems, Inc. nor the names of its
++ * contributors may be used to endorse or promote products derived
++ * from this software without specific prior written permission.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
++ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
++ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
++ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
++ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
++ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
++ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
++ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
++ * THE POSSIBILITY OF SUCH DAMAGE.
++ */
++
++ #ifdef __FreeBSD__
++ #include <sys/cdefs.h>
++ __FBSDID("$FreeBSD$");
++ #endif
++
++
++ #ifndef __SCTP_NSS_SHA1_h__
++ #define __SCTP_NSS_SHA1_h__
++
++ #ifdef SCTP_USE_NSS_SHA1
++ #ifdef __Userspace_os_Darwin
++ #define __APPLE__
++ #endif
++
++ #include <sys/types.h>
++ #include <pk11pub.h>
++
++ #ifdef __Userspace_os_Darwin
++ #undef __APPLE__
++ #endif
++
++ struct sha1_context {
++ struct PK11Context *pk11_ctx;
++ }; // Opaque structure.
++
++ typedef struct sha1_context SHA1_CTX;
++
++ #if defined(_KERNEL) || defined(__Userspace__)
++ #define SHA1_Init SCTP_NSS_SHA1_Init
++ #define SHA1_Update SCTP_NSS_SHA1_Update
++ #define SHA1_Final SCTP_NSS_SHA1_Final
++
++ #endif /* _KERNEL */
++ #endif
++ #endif
+diff -NcrB usrsctplib/netinet/sctp_os.h overrides/usrsctplib/netinet/sctp_os.h
+*** usrsctplib/netinet/sctp_os.h 2013-06-10 15:18:09.922331015 -0700
+--- overrides/usrsctplib/netinet/sctp_os.h 2013-06-10 15:16:39.541591630 -0700
+***************
+*** 73,79 ****
+ #endif
+
+ #if defined(__APPLE__)
+! #include <netinet/sctp_os_macosx.h>
+ #endif
+
+ #if defined(__Panda__)
+--- 73,80 ----
+ #endif
+
+ #if defined(__APPLE__)
+! #undef __APPLE__
+! // #include <netinet/sctp_os_macosx.h>
+ #endif
+
+ #if defined(__Panda__)
+diff -NcrB usrsctplib/netinet/sctp_os_userspace.h overrides/usrsctplib/netinet/sctp_os_userspace.h
+*** usrsctplib/netinet/sctp_os_userspace.h 2013-06-10 15:18:06.462302712 -0700
+--- overrides/usrsctplib/netinet/sctp_os_userspace.h 2013-06-10 15:24:33.145466427 -0700
+***************
+*** 992,998 ****
+ #define SCTP_READ_RANDOM(buf, len) read_random(buf, len)
+
+
+! #ifdef USE_SCTP_SHA1
+ #include <netinet/sctp_sha1.h>
+ #else
+ #if 0 /*this was old _KERNEL code... */
+--- 992,998 ----
+ #define SCTP_READ_RANDOM(buf, len) read_random(buf, len)
+
+
+! #if defined(USE_SCTP_SHA1) || defined(SCTP_USE_NSS_SHA1)
+ #include <netinet/sctp_sha1.h>
+ #else
+ #if 0 /*this was old _KERNEL code... */
+***************
+*** 1007,1023 ****
+ #if defined(HAVE_SHA2)
+ #include <crypto/sha2/sha2.h>
+ #endif
+! #if 0
+ /* going to have to port so generic across OS's... */
+! #if 1 /* openssl header files on FreeBSD 6.3 on Emulab and libssl-dev for Ubuntu */
+ #include <openssl/md5.h>
+ #include <openssl/sha.h>
+ /* libssl-dev calls this SHA_CTX, but it's refered to as SHA1_CTX within the
+ * SCTP stack code so here we typedef (or macro?) to equate the two.
+ */
+ typedef SHA_CTX SHA1_CTX;
+
+! #else /* only _KERNEL? */
+
+ #include <sys/md5.h>
+ /* map standard crypto API names */
+--- 1007,1026 ----
+ #if defined(HAVE_SHA2)
+ #include <crypto/sha2/sha2.h>
+ #endif
+!
+ /* going to have to port so generic across OS's... */
+! //#if 1 /* openssl header files on FreeBSD 6.3 on Emulab and libssl-dev for Ubuntu */
+! #ifdef SCTP_USE_OPENSSL_SHA1
+ #include <openssl/md5.h>
+ #include <openssl/sha.h>
+ /* libssl-dev calls this SHA_CTX, but it's refered to as SHA1_CTX within the
+ * SCTP stack code so here we typedef (or macro?) to equate the two.
+ */
+ typedef SHA_CTX SHA1_CTX;
++ #endif
+
+! #if 0
+! //#else /* only _KERNEL? */
+
+ #include <sys/md5.h>
+ /* map standard crypto API names */
+***************
+*** 1025,1031 ****
+ #define MD5_Update MD5Update
+ #define MD5_Final MD5Final
+ #endif
+- #endif
+
+
+ /* start OOTB only stuff */
+--- 1028,1033 ----

Powered by Google App Engine
This is Rietveld 408576698