diff options
author | Frank Schmirler <vdr@schmirler.de> | 2010-12-02 08:59:14 +0100 |
---|---|---|
committer | Frank Schmirler <vdr@schmirler.de> | 2010-12-02 08:59:14 +0100 |
commit | 5a270cc3ab659a98b4bb674acb77982f7e1ecb14 (patch) | |
tree | 5f2f51c096f192a9b32af9ffd8244eeb6637ad06 /tools/socket.c | |
parent | e6249bf957a943920b11abbd9efac1efa18b1d00 (diff) | |
download | vdr-plugin-streamdev-5a270cc3ab659a98b4bb674acb77982f7e1ecb14.tar.gz vdr-plugin-streamdev-5a270cc3ab659a98b4bb674acb77982f7e1ecb14.tar.bz2 |
Snapshot 2007-05-09
Diffstat (limited to 'tools/socket.c')
-rw-r--r-- | tools/socket.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/tools/socket.c b/tools/socket.c index 4b5167d..e9266c5 100644 --- a/tools/socket.c +++ b/tools/socket.c @@ -6,6 +6,15 @@ #include <errno.h> #include <fcntl.h> +// default class: best effort +#define DSCP_BE 0 +// gold class (video): assured forwarding 4 with lowest drop precedence +#define DSCP_AF41 34 << 2 +// premium class (voip): expedited forwarding +#define DSCP_EF 46 << 2 +// actual DSCP value used +#define STREAMDEV_DSCP DSCP_AF41 + cTBSocket::cTBSocket(int Type) { memset(&m_LocalAddr, 0, sizeof(m_LocalAddr)); memset(&m_RemoteAddr, 0, sizeof(m_RemoteAddr)); @@ -141,3 +150,8 @@ bool cTBSocket::Shutdown(int how) { return ::shutdown(*this, how) != -1; } + +bool cTBSocket::SetDSCP(void) { + int dscp = STREAMDEV_DSCP; + return ::setsockopt(*this, SOL_IP, IP_TOS, &dscp, sizeof(dscp)) != -1; +} |