{
    use esmith::util;

    if ($ifup_this_device eq "no")
    {
        # Need syntactically valid IP address to avoid complaints
        # from init.d/network script
        return "IPADDR=1.1.1.1";
    }

    # OVH
    my $this_device;

    $this_device = \%InternalInterface if $is_internal;
    $this_device = \%ExternalInterface if $is_external;
    return unless $this_device;

    my $OVH = $this_device->{OVH} || 'no';
    if ( $OVH eq 'yes')
        {
            if ($is_external)
                {
                return "BOOTPROTO=none" if ($ExternalDHCP eq "on");

                my ($network, $broadcast) = esmith::util::computeNetworkAndBroadcast ($ExternalIP, $ExternalNetmask);
                my $ExternalNetmaskOVH = $this_device->{NetmaskOVH}||  $ExternalNetmask;

                return "BOOTPROTO=none\n" .
                "IPADDR=$ExternalIP\n" .
                "NETMASK=$ExternalNetmaskOVH\n" .
                "GATEWAY=$GatewayIP\n";
                #"NETWORK=$network\n".
                #"BROADCAST=$broadcast";

                }
            return "" unless ($is_internal);
            my ($network, $broadcast) = esmith::util::computeNetworkAndBroadcast ($LocalIP, $LocalNetmask);
            my $LocalNetmaskOVH = $this_device->{NetmaskOVH}||  $LocalNetmask;
            return "BOOTPROTO=none\n" .
            "IPADDR=$LocalIP\n" .
            "NETMASK=$LocalNetmaskOVH\n" .
            "GATEWAY=$GatewayIP\n";
            #"NETWORK=$network\n" .
            #"BROADCAST=$broadcast";

            return "";
        }

    #END OVH

    if ($is_external)
    {
        # We are now running a supervised dhcpcd - setting the BOOTPROTO to "none"
        # allows the supervised dhcpcd to do the work without fighting with ifup
        return "BOOTPROTO=none" if ($ExternalDHCP eq "on");

        my ($network, $broadcast) = esmith::util::computeNetworkAndBroadcast ($ExternalIP, $ExternalNetmask);

        return "BOOTPROTO=none\n" .
        "IPADDR=$ExternalIP\n" .
        "NETMASK=$ExternalNetmask\n" .
        "NETWORK=$network\n" .
        "BROADCAST=$broadcast";
    }
    return "" unless ($is_internal);

    my ($network, $broadcast) = esmith::util::computeNetworkAndBroadcast ($LocalIP, $LocalNetmask);

    return "BOOTPROTO=none\n" .
    "IPADDR=$LocalIP\n" .
    "NETMASK=$LocalNetmask\n" .
    "NETWORK=$network\n" .
    "BROADCAST=$broadcast";
}

