diff options
Diffstat (limited to 'scripts/system')
-rw-r--r-- | scripts/system/vyatta_check_domainname.pl | 72 | ||||
-rw-r--r-- | scripts/system/vyatta_update_sysctl.pl | 87 |
2 files changed, 0 insertions, 159 deletions
diff --git a/scripts/system/vyatta_check_domainname.pl b/scripts/system/vyatta_check_domainname.pl deleted file mode 100644 index a6e0d227..00000000 --- a/scripts/system/vyatta_check_domainname.pl +++ /dev/null @@ -1,72 +0,0 @@ -#!/usr/bin/perl - -# **** License **** -# 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. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# This code was originally developed by Vyatta, Inc. -# Portions created by Vyatta are Copyright (C) 2010 Vyatta, Inc. -# All Rights Reserved. -# -# **** End License **** - -use strict; -use warnings; - -# Source: http://en.wikipedia.org/wiki/Domain_Name_System -# Rules for forming domain names appear in RFC 1035, RFC 1123, and RFC 2181. -# A domain name consists of one or more parts, technically called labels, -# that are conventionally concatenated, and delimited by dots, -# such as example.com. -# -# * The right-most label conveys the top-level domain; for example, -# the domain name www.example.com belongs to the top-level domain com. -# * The hierarchy of domains descends from right to left; each label to -# the left specifies a subdivision, or subdomain of the domain to the -# right. For example: the label example specifies a subdomain of the -# com domain, and www is a sub domain of example.com. This tree of -# subdivisions may have up to 127 levels. -# -# * Each label may contain up to 63 characters. The full domain name may -# not exceed a total length of 253 characters in its external -# dotted-label specification.[10] In the internal binary -# representation of the DNS the maximum length requires 255 octets of -# storage.[3] In practice, some domain registries may have shorter -# limits.[citation needed] -# -# * DNS names may technically consist of any character representable in -# an octet. However, the allowed formulation of domain names in the -# DNS root zone, and most other sub domains, uses a preferred format -# and character set. The characters allowed in a label are a subset -# of the ASCII character set, and includes the characters a through -# z, A through Z, digits 0 through 9, and the hyphen. This rule is -# known as the LDH rule (letters, digits, hyphen). Domain names are -# interpreted in case-independent manner. Labels may not start or end -# with a hyphen.[11] - -foreach my $fqdn (@ARGV) { - die "$fqdn: full domain length exceeds 253 characters\n" - if length($fqdn) > 253; - - my @label = split /\./, $fqdn; - die "$fqdn: domain name greater than 127 levels\n" - if ($#label > 127); - - foreach my $label (@label) { - die "$label: invalid character in domain name\n" - unless $label =~ /^[-0-9a-zA-Z]+$/; - - die "$label: label must not start or end with hyphen\n" - if $label =~ /(^-)|(-$)/; - - die "$label: domain name element greater than 63 characters\n" - if (length($label) > 63); - } -} - diff --git a/scripts/system/vyatta_update_sysctl.pl b/scripts/system/vyatta_update_sysctl.pl deleted file mode 100644 index adc84178..00000000 --- a/scripts/system/vyatta_update_sysctl.pl +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/perl -# -# Module: vyatta_update_sysctl.pl -# -# **** License **** -# 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. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# A copy of the GNU General Public License is available as -# `/usr/share/common-licenses/GPL' in the Debian GNU/Linux distribution -# or on the World Wide Web at `http://www.gnu.org/copyleft/gpl.html'. -# You can also obtain it by writing to the Free Software Foundation, -# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -# MA 02110-1301, USA. -# -# This code was originally developed by Vyatta, Inc. -# Portions created by Vyatta are Copyright (C) 2007 Vyatta, Inc. -# All Rights Reserved. -# -# Author: Jason Hendry -# Date: October 2014 -# Description: Script to manage sysctl values -# -# **** End License **** -# - -use lib "/opt/vyatta/share/perl5/"; -use Vyatta::Config; -use Vyatta::File qw(touch); - -use Getopt::Long; - -use strict; -use warnings; - -my $SYSCTL = '/sbin/sysctl'; - -my (@opts); - -sub usage { - print <<EOF; -Usage: $0 --option=<sysctl_option> <value> -EOF - exit 1; -} - -GetOptions( - "option=s{2,}" => \@opts, - ) or usage(); - -set_sysctl_value(@opts) if (@opts); -exit 0; - -sub set_sysctl_value { - my ($sysctl_opt, @nvaluearr) = @_; - my $nvalue = join ' ',@nvaluearr; - my $ovalue = get_sysctl_value($sysctl_opt); - - if ($nvalue ne $ovalue) { - my $cmd = "$SYSCTL -w $sysctl_opt=\"$nvalue\" 2>&1> /dev/null"; - system($cmd); - if ($? >> 8) { - die "exec of $SYSCTL failed: '$cmd'"; - } - } -} - -sub get_sysctl_value { - my $option = shift; - my $val; - - open( my $sysctl, '-|', "$SYSCTL $option 2>&1" ) or die "sysctl failed: $!\n"; - while (<$sysctl>) { - chomp; - $val = (split(/ = /, $_))[1]; - } - close $sysctl; - return ($val); -} - -# net.ipv4.ipfrag_time |