author | Tomas Klacko <tomas.klacko@oracle.com> |
Wed, 11 Mar 2015 03:50:20 -0700 | |
changeset 3932 | 1b7dd68f6aa9 |
parent 2135 | components/proftpd/patches/19668629.patch@33531c49af40 |
permissions | -rw-r--r-- |
2135
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
1 |
http://bugs.proftpd.org/show_bug.cgi?id=4109 |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
2 |
https://github.com/proftpd/proftpd/commit/0b8afb267eb6fd6acf98595a8c2812cd27ac11a0 |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
3 |
|
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
4 |
diff --git a/src/inet.c b/src/inet.c |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
5 |
index f5602e0..d0a0631 100644 |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
6 |
--- a/src/inet.c |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
7 |
+++ b/src/inet.c |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
8 |
@@ -770,8 +770,9 @@ int pr_inet_set_proto_opts(pool *p, conn_t *c, int mss, int nodelay, |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
9 |
if (pr_netaddr_use_ipv6()) { |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
10 |
/* Only set TCLASS flags on IPv6 sockets; IPv4 sockets use TOS. */ |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
11 |
if (pr_netaddr_get_family(c->local_addr) == AF_INET6) { |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
12 |
+ int level = ipv6_proto; |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
13 |
if (c->listen_fd != -1) { |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
14 |
- if (setsockopt(c->listen_fd, ip_level, IPV6_TCLASS, (void *) &tos, |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
15 |
+ if (setsockopt(c->listen_fd, level, IPV6_TCLASS, (void *) &tos, |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
16 |
sizeof(tos)) < 0) { |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
17 |
pr_log_pri(PR_LOG_NOTICE, "error setting listen fd IPV6_TCLASS: %s", |
33531c49af40
19668629 proftpd doesn't handle IPV6_TCLASS properly
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff
changeset
|
18 |
strerror(errno)); |