'Effectively just print the straight path to the target'

def straight_local(self, l, plugin):

    params = iDict(plugin.getParameters())
    laddr = self.conv_param(l.listenaddr, params)
    lport = self.conv_param(l.listenport, params)
    if ((not laddr) or (not lport)):
        return
    enable_hack = False
    try:
        cache = {l.destaddr: plugin.get(l.destaddr), l.destport: plugin.get(l.destport)}
        laddr = self.conv_param(l.destaddr, params)
        lport = self.conv_param(l.destport, params)
    except exception.CmdErr:
        enable_hack = True
        cache = {l.destaddr: plugin.get(l.listenaddr), l.destport: plugin.get(l.listenport)}
    self.io.print_success(('Local    Tunnel    -    %s' % l.name))
    try:
        if (not enable_hack):
            targetip = self.prompt_redir(plugin, l.destaddr, 'Destination    IP', laddr)
            targetport = self.prompt_redir(plugin, l.destport, 'Destination    Port', lport)
            self.io.print_success(('(%s)    Local    %s:%s' % (l.protocol, targetip, targetport)))
        else:
            targetip = self.prompt_redir(plugin, l.listenaddr, 'Destination    IP', laddr)
            targetport = self.prompt_redir(plugin, l.listenport, 'Destination    Port', lport)
            self.io.print_success(('(%s)    Local    %s:%s' % (l.protocol, targetip, targetport)))
    except exception.PromptErr:
        self.io.print_error('Aborted    by    user')
        for (var, val) in cache.items():
            try:
                plugin.set(var, val)
            except:
                self.io.print_error(("Error    setting    '%s'    -    May    be    in    an    inconsistent    state" % var))
        raise
    except Exception as e:
        self.io.print_error('Error:    {0}'.format(str(type(e))))
