# TODO: Add checks for ipip tunnels.
#
class tunnel (moduleBase):
- _modinfo = { 'mhelp' : 'create/configure GRE/IPIP/SIT tunnel interfaces',
+ _modinfo = { 'mhelp' : 'create/configure GRE/IPIP/SIT and GRETAP tunnel interfaces',
'attrs' : {
'mode' :
{ 'help' : 'type of tunnel as in \'ip link\' command.',
- 'validvals' : ['gre', 'ipip', 'sit'],
+ 'validvals' : ['gre', 'gretap', 'ipip', 'sit'],
'required' : True,
'example' : ['mode gre']},
'local' :
linkattrs['state'] = citems[i + 1]
elif citems[i] == 'link/ether':
linkattrs['hwaddress'] = citems[i + 1]
- elif citems[i] in [ 'link/gre', 'link/sit' ]:
+ elif citems[i] in ['link/gre', 'link/sit', 'gretap']:
linkattrs['kind'] = 'tunnel'
- tunattrs = {'mode' : citems[i].split ('/')[1],
+ tunattrs = {'mode': citems[i].split('/')[-1],
'endpoint' : None,
'local' : None,
'ttl' : None,
'physdev' : None}
- for j in range(i + 2, len(citems)):
+ for j in range(i, len(citems)):
if citems[j] == 'local':
tunattrs['local'] = citems[j + 1]
elif citems[j] == 'remote':