]> git.sesse.net Git - cubemap/blobdiff - client.cpp
Support SO_MAX_PACING_RATE.
[cubemap] / client.cpp
index f6361f34ab47e62dc30ec1ebd6844ae73462d21a..eea41a5e0da43d40b0c468b206158f69198ac1b6 100644 (file)
@@ -9,6 +9,10 @@
 #include "state.pb.h"
 #include "stream.h"
 
+#ifndef SO_MAX_PACING_RATE
+#define SO_MAX_PACING_RATE 47
+#endif
+
 using namespace std;
 
 Client::Client(int sock)
@@ -80,6 +84,11 @@ Client::Client(const ClientProto &serialized, Stream *stream)
                }
                fwmark = 0;
        }
+       if (setsockopt(sock, SOL_SOCKET, SO_MAX_PACING_RATE, &stream->pacing_rate, sizeof(stream->pacing_rate)) == -1) {
+               if (stream->pacing_rate != ~0U) {
+                       log_perror("setsockopt(SO_MAX_PACING_RATE)");
+               }
+       }
 }
 
 ClientProto Client::serialize() const