Bug 1217677: increase UDP receive buffer size from default to 1MB draft
authorNils Ohlmeier [:drno] <drno@ohlmeier.org>
Thu, 25 Feb 2016 17:13:26 -0800
changeset 335271 c353cb429dd9253bcf155e08ff46a0326f48a470
parent 335075 5e0140b6d11821e0c2a2de25bc5431783f03380a
child 335272 d731b317c28aaf1440d812dab52486a6e6cf3d18
push id11751
push userdrno@ohlmeier.org
push dateSun, 28 Feb 2016 10:10:09 +0000
bugs1217677
milestone47.0a1
Bug 1217677: increase UDP receive buffer size from default to 1MB MozReview-Commit-ID: 63yzGpXG2AI
media/mtransport/nr_socket_prsock.cpp
--- a/media/mtransport/nr_socket_prsock.cpp
+++ b/media/mtransport/nr_socket_prsock.cpp
@@ -595,16 +595,25 @@ int NrSocket::create(nr_transport_addr *
 
   switch (addr->protocol) {
     case IPPROTO_UDP:
       if (!(fd_ = PR_OpenUDPSocket(naddr.raw.family))) {
         r_log(LOG_GENERIC,LOG_CRIT,"Couldn't create UDP socket, "
               "family=%d, err=%d", naddr.raw.family, PR_GetError());
         ABORT(R_INTERNAL);
       }
+      PRSocketOptionData opt_rcvbuf;
+      opt_rcvbuf.option = PR_SockOpt_RecvBufferSize;
+      opt_rcvbuf.value.recv_buffer_size = 1*1024*1024;
+      status = PR_SetSocketOption(fd_, &opt_rcvbuf);
+      if (status != PR_SUCCESS) {
+        r_log(LOG_GENERIC, LOG_CRIT,
+          "Couldn't set receive buffer size socket option: %d", status);
+        ABORT(R_INTERNAL);
+      }
       break;
     case IPPROTO_TCP:
       if (!(fd_ = PR_OpenTCPSocket(naddr.raw.family))) {
         r_log(LOG_GENERIC,LOG_CRIT,"Couldn't create TCP socket, "
               "family=%d, err=%d", naddr.raw.family, PR_GetError());
         ABORT(R_INTERNAL);
       }
       // Set ReuseAddr for TCP sockets to enable having several