summaryrefslogtreecommitdiff
path: root/curvetun.zsh
blob: 16a1fd332212c01bd9d773458393013570035a43 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#compdef curvetun
#
# curvetun.zsh -- zsh completion function for curvetun
#
# Copyright (C) 2013 Hideo Hattori <hhatto.jp@gmail.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.

typeset -A opt_args

_interfaces () {
    _wanted interfaces expl 'network interface' \
    _net_interfaces
    _values "Pseudo-device that captures on all interfaces" "any"
}

_arguments -s -S \
    "(-k --keygen)"{-k,--keygen}"[Generate public/private keypair]" \
    "(-x --export)"{-x,--export}"[Export your public data for remote servers]" \
    "(-C --dumpc)"{-C,--dumpc}"[Dump parsed clients]" \
    "(-S --dumps)"{-S,--dumps}"[Dump parsed servers]" \
    "(-D --nofork)"{-D,--nofork}"[Do not daemonize]" \
    "(-d --dev)"{-d,--dev}"[Networking tunnel device, e.g. tun0]:device:_interfaces" \
    {-v,--version}"[Print version]:" \
    {-h,--help}"[Print this help]:" \
    "(-s --server -N --no-logging -p --port -t --stun -u --udp -4 --ipv4 -6 --ipv6 -c --client)"{-c,--client}"[Client mode, server alias optional]:client:_gnu_generic" \
    "(-c --client -s --server)"{-s,--server}"[Server mode]" \
    "(-c --client -N --no-logging)"{-N,--no-logging}"[Disable server logging (for better anonymity)]" \
    "(-c --client -p --port)"{-p,--port}"[Port number (mandatory)]:port:_gnu_generic" \
    "(-c --client -t --stun)"{-t,--stun}"[Show public IP/Port mapping via STUN]:stun:_gnu_generic" \
    "(-c --client -u --udp)"{-u,--udp}"[Use UDP as carrier instead of TCP]" \
    "(-c --client -4 --ipv4)"{-4,--ipv4}"[Tunnel devices are IPv4]" \
    "(-c --client -6 --ipv6)"{-6,--ipv6}"[Tunnel devices are IPv6 (default: same as carrier protocol)]" \
    "*::args:_gnu_generic"
which results in the adjust_link function being called, setting the cmode. The port_enable() will for other ports will be called much later. When ports 9 or 10 are used as user ports and have a real phy attached which does not use all the available SERDES interface, e.g. a 1Gbps SGMII, there is currently no mechanism in place to set the CMODE of the port from software. It must be hoped the stripping resistors are correct. At the same time, add a function to get the cmode. This will be needed when configuring the SERDES interfaces. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Reviewed-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat
-rw-r--r--drivers/net/dsa/mv88e6xxx/chip.c8
-rw-r--r--drivers/net/dsa/mv88e6xxx/mv88e6xxx.h9
-rw-r--r--drivers/net/dsa/mv88e6xxx/port.c64
-rw-r--r--drivers/net/dsa/mv88e6xxx/port.h3
4 files changed, 84 insertions, 0 deletions
diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c