summaryrefslogtreecommitdiff
path: root/lib/Vyatta/ioctl.pm
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2024-07-01 13:26:09 +0200
committerGitHub <noreply@github.com>2024-07-01 13:26:09 +0200
commitb8bdc8a668ee7786fc6c19f91d18b944a5e9cdbc (patch)
treee9697cbe7ef50908ce96a0a57e76f7d7b7bcaeb2 /lib/Vyatta/ioctl.pm
parent6f435de5a5ee165d24a11a28c5aa10b735bace03 (diff)
parent069bd35b3cc58e0deeae02d3a7811d29c1ccea3f (diff)
downloadvyatta-cfg-b8bdc8a668ee7786fc6c19f91d18b944a5e9cdbc.tar.gz
vyatta-cfg-b8bdc8a668ee7786fc6c19f91d18b944a5e9cdbc.zip
Merge pull request #83 from c-po/no-legacy
T6527: remove legacy Perl library components
Diffstat (limited to 'lib/Vyatta/ioctl.pm')
-rw-r--r--lib/Vyatta/ioctl.pm67
1 files changed, 0 insertions, 67 deletions
diff --git a/lib/Vyatta/ioctl.pm b/lib/Vyatta/ioctl.pm
deleted file mode 100644
index 6572231..0000000
--- a/lib/Vyatta/ioctl.pm
+++ /dev/null
@@ -1,67 +0,0 @@
-# Author: John Southworth <john.southworth@vyatta.com>
-# Date: 2012
-# Description: vyatta ioctl functions
-
-# **** 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) 2008 Vyatta, Inc.
-# All Rights Reserved.
-# **** End License ****
-
-package Vyatta::ioctl;
-
-use strict;
-use warnings;
-use Socket;
-Socket6->import(qw(inet_pton getaddrinfo));
-
-{
- local $^W = 0;
- require 'sys/ioctl.ph';
-}
-
-our @EXPORT = qw(get_terminal_size get_interface_flags);
-use base qw(Exporter);
-
-
-# returns (rows, columns) for terminal size;
-sub get_terminal_size {
- # undefined if not terminal attached
- open(my $TTY, '>', '/dev/tty')
- or return;
-
- my $winsize = '';
- # undefined if output not going to terminal
- return unless (ioctl($TTY, &TIOCGWINSZ, $winsize));
- close($TTY);
-
- my ($rows, $cols, undef, undef) = unpack('S4', $winsize);
- return ($rows, $cols);
-}
-
-#Do SIOCGIFFLAGS ioctl in perl
-sub get_interface_flags {
- my $name = shift;
-
- socket (my $sock, AF_INET, SOCK_DGRAM, 0)
- or die "open UDP socket failed: $!";
-
- my $ifreq = pack('a16', $name);
- ioctl($sock, &SIOCGIFFLAGS, $ifreq)
- or return; #undef
-
- my (undef, $flags) = unpack('a16s', $ifreq);
- return $flags;
-
-}
-
-1;