Merge branch 'sctp-info-dump'
Xin Long says: ==================== sctp: add some missing peer_capables in sctp info dump The 1st patch removes the unused and obsolete hostname_address from sctp_association peer and also the bit from sctp_info peer_capables, and then reuses its bit for reconf_capable and use the higher available bit for intl_capable in the 2nd patch. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
commit
0af03871b6
@ -1711,7 +1711,6 @@ struct sctp_association {
|
||||
__u16 ecn_capable:1, /* Can peer do ECN? */
|
||||
ipv4_address:1, /* Peer understands IPv4 addresses? */
|
||||
ipv6_address:1, /* Peer understands IPv6 addresses? */
|
||||
hostname_address:1, /* Peer understands DNS addresses? */
|
||||
asconf_capable:1, /* Does peer support ADDIP? */
|
||||
prsctp_capable:1, /* Can peer do PR-SCTP? */
|
||||
reconf_capable:1, /* Can peer do RE-CONFIG? */
|
||||
|
@ -2207,7 +2207,7 @@ static enum sctp_ierror sctp_verify_param(struct net *net,
|
||||
break;
|
||||
|
||||
case SCTP_PARAM_HOST_NAME_ADDRESS:
|
||||
/* Tell the peer, we won't support this param. */
|
||||
/* This param has been Deprecated, send ABORT. */
|
||||
sctp_process_hn_param(asoc, param, chunk, err_chunk);
|
||||
retval = SCTP_IERROR_ABORT;
|
||||
break;
|
||||
@ -2589,10 +2589,6 @@ do_addr_param:
|
||||
asoc->cookie_life = ktime_add_ms(asoc->cookie_life, stale);
|
||||
break;
|
||||
|
||||
case SCTP_PARAM_HOST_NAME_ADDRESS:
|
||||
pr_debug("%s: unimplemented SCTP_HOST_NAME_ADDRESS\n", __func__);
|
||||
break;
|
||||
|
||||
case SCTP_PARAM_SUPPORTED_ADDRESS_TYPES:
|
||||
/* Turn off the default values first so we'll know which
|
||||
* ones are really set by the peer.
|
||||
@ -2624,10 +2620,6 @@ do_addr_param:
|
||||
asoc->peer.ipv6_address = 1;
|
||||
break;
|
||||
|
||||
case SCTP_PARAM_HOST_NAME_ADDRESS:
|
||||
asoc->peer.hostname_address = 1;
|
||||
break;
|
||||
|
||||
default: /* Just ignore anything else. */
|
||||
break;
|
||||
}
|
||||
|
@ -5192,10 +5192,11 @@ int sctp_get_sctp_info(struct sock *sk, struct sctp_association *asoc,
|
||||
info->sctpi_peer_rwnd = asoc->peer.rwnd;
|
||||
info->sctpi_peer_tag = asoc->c.peer_vtag;
|
||||
|
||||
mask = asoc->peer.ecn_capable << 1;
|
||||
mask = asoc->peer.intl_capable << 1;
|
||||
mask = (mask | asoc->peer.ecn_capable) << 1;
|
||||
mask = (mask | asoc->peer.ipv4_address) << 1;
|
||||
mask = (mask | asoc->peer.ipv6_address) << 1;
|
||||
mask = (mask | asoc->peer.hostname_address) << 1;
|
||||
mask = (mask | asoc->peer.reconf_capable) << 1;
|
||||
mask = (mask | asoc->peer.asconf_capable) << 1;
|
||||
mask = (mask | asoc->peer.prsctp_capable) << 1;
|
||||
mask = (mask | asoc->peer.auth_capable);
|
||||
|
Loading…
x
Reference in New Issue
Block a user