input output
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 3335
Audio Input-Output Library 0.2.0
Audio Input-Output Library (libaio) is meant to solve the problem of differing digital audio platforms once and for all. more>>
Audio Input-Output Library (libaio) is meant to solve the problem of differing digital audio platforms once and for all.
JACK is unnecessarily complex for most applications, and while libaos support for file output is cool, it limits what the API can do and is therefore inadequate for any kind of real time application.
libaio provides a clean application interface and a simple compile-time driver switching decision, yielding a lightweight way to use the local sound hardware without having to care what it is.
Libaios first sparkle was when I, Hod McWuff (alias, of course), found myself trying to debug ALSA implementations for libao and madplay, and another audio-related project Id been working on. That project needed multiplatform audio support of its own, with latency management, which libao lacked.
It also seemed that libao shouldnt have been trying to be both a hardware abstraction *AND* an output abstraction, and also that it seemed more intuitive as an output (live vs file) abstraction.
Enter libaio. All it does is abstract the local sound hardware platform, to present a clean, uniform interface to playing and capturing digital audio, with facilities for basic latency management. It was written from scratch around its developing ALSA driver, from many many reference sources including libao and Robert Leslies excellent madplay MP3 decoder, and of course the ALSA documentation and examples.
Libaios distinction comes from its build-time decisionmaking. It only compiles and links the best driver available for the given platform. Therefore, selecting and loading a driver no longer applies; and well it shouldnt, theres never more than one correct choice anyway.
Libaio is not intended to replace libao; rather it is intended to supplement it. The key argument is, why would anyone EVER have more than one running sound platform type on any single machine? Sure, they might have ESD or ARTS, but they more resemble file output than a live device. Theres also the OSS emulation in ALSA, but given a good ALSA driver, whod use OSS?
Then theres the fact that applications have to tell libao what "plugin" to use, and all the drivers in libao have different parameters. That means the application has to know more than it should about what it shouldnt have to see. The app shouldnt have to say more than "give me the local device for playback with *** format" or something to that effect, and start writing.
Finally, plugins for stuff like proprietary file formats, ESD et al, but there shouldnt be any need for more than one of (ALSA|OSS|SUN|WIN32|MACOSX ) on any given distribution. Therefore, binary distribution of a compiled-in driver is possible, even preferred.
It is proposed that all of the hardware drivers in libao, and madplay, and several other places, be reviewed and ported to libaio. Then, they can be removed from those packages in favor of an AIO interface.
Installation:
## building
./configure
make
## installing (as root)
make install
<<lessJACK is unnecessarily complex for most applications, and while libaos support for file output is cool, it limits what the API can do and is therefore inadequate for any kind of real time application.
libaio provides a clean application interface and a simple compile-time driver switching decision, yielding a lightweight way to use the local sound hardware without having to care what it is.
Libaios first sparkle was when I, Hod McWuff (alias, of course), found myself trying to debug ALSA implementations for libao and madplay, and another audio-related project Id been working on. That project needed multiplatform audio support of its own, with latency management, which libao lacked.
It also seemed that libao shouldnt have been trying to be both a hardware abstraction *AND* an output abstraction, and also that it seemed more intuitive as an output (live vs file) abstraction.
Enter libaio. All it does is abstract the local sound hardware platform, to present a clean, uniform interface to playing and capturing digital audio, with facilities for basic latency management. It was written from scratch around its developing ALSA driver, from many many reference sources including libao and Robert Leslies excellent madplay MP3 decoder, and of course the ALSA documentation and examples.
Libaios distinction comes from its build-time decisionmaking. It only compiles and links the best driver available for the given platform. Therefore, selecting and loading a driver no longer applies; and well it shouldnt, theres never more than one correct choice anyway.
Libaio is not intended to replace libao; rather it is intended to supplement it. The key argument is, why would anyone EVER have more than one running sound platform type on any single machine? Sure, they might have ESD or ARTS, but they more resemble file output than a live device. Theres also the OSS emulation in ALSA, but given a good ALSA driver, whod use OSS?
Then theres the fact that applications have to tell libao what "plugin" to use, and all the drivers in libao have different parameters. That means the application has to know more than it should about what it shouldnt have to see. The app shouldnt have to say more than "give me the local device for playback with *** format" or something to that effect, and start writing.
Finally, plugins for stuff like proprietary file formats, ESD et al, but there shouldnt be any need for more than one of (ALSA|OSS|SUN|WIN32|MACOSX ) on any given distribution. Therefore, binary distribution of a compiled-in driver is possible, even preferred.
It is proposed that all of the hardware drivers in libao, and madplay, and several other places, be reviewed and ported to libaio. Then, they can be removed from those packages in favor of an AIO interface.
Installation:
## building
./configure
make
## installing (as root)
make install
Download (0.15MB)
Added: 2006-04-07 License: LGPL (GNU Lesser General Public License) Price:
1298 downloads
Simput 0.4
Simput is a group of utilities useful for creating PHP Web sites. more>>
Simput is a group of utilities useful for creating PHP Web sites. It includes a library that converts XML into an HTML form.
Form input validation is included (which checks if required fields are entered) and another form will be created to highlight fields which need to be entered.
Another included library makes data from a database or user input safer for HTML display. It also includes utilities to manipulate ISO dates to and from the US format. Another library can read a directory into an array with filtering by regular expressions.
Main features:
- Create a html form from xml. Also auto verification of the form when submitted
- Database Abstraction
- Input Output filtering. These are routines that filter user text input for safe web display and database storage.
- Date utilities. Utilities that fomat user entered dates into and out of the iso date format, usefull for database storage.
Enhancements:
- The PHP form generator was updated.
- Hidden, select, checkbox, and password field types were added.
- Form submits were made "sticky", meaning that user input stays when the form is regenerated because fields were left out.
- Formatting options were added, including table options.
- Formatting can be done globally over the entire form or on a element by element basis.
<<lessForm input validation is included (which checks if required fields are entered) and another form will be created to highlight fields which need to be entered.
Another included library makes data from a database or user input safer for HTML display. It also includes utilities to manipulate ISO dates to and from the US format. Another library can read a directory into an array with filtering by regular expressions.
Main features:
- Create a html form from xml. Also auto verification of the form when submitted
- Database Abstraction
- Input Output filtering. These are routines that filter user text input for safe web display and database storage.
- Date utilities. Utilities that fomat user entered dates into and out of the iso date format, usefull for database storage.
Enhancements:
- The PHP form generator was updated.
- Hidden, select, checkbox, and password field types were added.
- Form submits were made "sticky", meaning that user input stays when the form is regenerated because fields were left out.
- Formatting options were added, including table options.
- Formatting can be done globally over the entire form or on a element by element basis.
Download (0.14MB)
Added: 2005-11-08 License: GPL (GNU General Public License) Price:
1447 downloads
XML::Output 0.03
XML::Output is a Perl module for writing simple XML documents. more>>
XML::Output is a Perl module for writing simple XML documents.
SYNOPSIS
use XML::Output;
open(FH,>file.xml);
my $xo = new XML::Output({fh => *FH});
$xo->open(tagname, {attrname => attrval});
$xo->pcdata(element content);
$xo->close();
close(FH);
ABSTRACT
XML::Output is a Perl module for writing simple XML documents
XML::Output is a Perl module for writing simple XML document. The following methods are provided.
new
$xo = new XML::Output;
Constructs a new XML::Output object.
open
$xo->open(tagname, {attrname => attrval});
Open an element with specified name (and optional attributes)
close
$xo->close;
Close an element
empty
$xo->empty(tagname, {attrname => attrval});
Insert an empty element with specified name (and optional attributes)
pcdata
$xo->pcdata(element content);
Insert text
comment
$xo->comment(comment text);
Insert a comment
xmlstr
print $xo->xmlstr;
Get a string representation of the constructed document
<<lessSYNOPSIS
use XML::Output;
open(FH,>file.xml);
my $xo = new XML::Output({fh => *FH});
$xo->open(tagname, {attrname => attrval});
$xo->pcdata(element content);
$xo->close();
close(FH);
ABSTRACT
XML::Output is a Perl module for writing simple XML documents
XML::Output is a Perl module for writing simple XML document. The following methods are provided.
new
$xo = new XML::Output;
Constructs a new XML::Output object.
open
$xo->open(tagname, {attrname => attrval});
Open an element with specified name (and optional attributes)
close
$xo->close;
Close an element
empty
$xo->empty(tagname, {attrname => attrval});
Insert an empty element with specified name (and optional attributes)
pcdata
$xo->pcdata(element content);
Insert text
comment
$xo->comment(comment text);
Insert a comment
xmlstr
print $xo->xmlstr;
Get a string representation of the constructed document
Download (0.035MB)
Added: 2006-09-07 License: GPL (GNU General Public License) Price:
1144 downloads
Linux::Input 1.02
Linux::Input is a Linux input event interface. more>>
Linux::Input is a Linux input event interface.
SYNOPSIS
Example: 1 joystick using event API
my $js1 = Linux::Input->new(/dev/input/event3);
while (1) {
while (my @events = $js1->poll(0.01)) {
foreach (@event) {
}
}
}
Example: 2 joysticks using joystick API (different event structure)
my $js1 = Linux::Input::Joystick->new(/dev/input/js0);
my $js2 = Linux::Input::Joystick->new(/dev/input/js1);
my $selector = IO::Select->new();
$selector->add($js1->fh);
$selector->add($js2->fh);
while (my $fh = $selector->can_read) {
my @event;
if ($fh == $js1->fh) {
@event = $js1->poll()
} elsif ($fh == $js2->fh) {
@event = $js2->poll()
}
foreach (@event) {
# work
}
}
Example 3: monitor all input devices
use File::Basename qw(basename);
my @inputs = map { "/dev/input/" . basename($_) }
;
my @dev;
my $selector = IO::Select->new();
foreach (@inputs) {
my $device = Linux::Input->new($_);
$selector->add($device->fh);
push @dev, $device;
}
while (my $fh = $selector->can_read) {
# work
}
Example 4: testing for events on the command line
# information on what event queue belongs to what device
cat /proc/bus/input/devices
# verify that events are coming in
sudo evtest.pl /dev/input/event*
<<lessSYNOPSIS
Example: 1 joystick using event API
my $js1 = Linux::Input->new(/dev/input/event3);
while (1) {
while (my @events = $js1->poll(0.01)) {
foreach (@event) {
}
}
}
Example: 2 joysticks using joystick API (different event structure)
my $js1 = Linux::Input::Joystick->new(/dev/input/js0);
my $js2 = Linux::Input::Joystick->new(/dev/input/js1);
my $selector = IO::Select->new();
$selector->add($js1->fh);
$selector->add($js2->fh);
while (my $fh = $selector->can_read) {
my @event;
if ($fh == $js1->fh) {
@event = $js1->poll()
} elsif ($fh == $js2->fh) {
@event = $js2->poll()
}
foreach (@event) {
# work
}
}
Example 3: monitor all input devices
use File::Basename qw(basename);
my @inputs = map { "/dev/input/" . basename($_) }
;
my @dev;
my $selector = IO::Select->new();
foreach (@inputs) {
my $device = Linux::Input->new($_);
$selector->add($device->fh);
push @dev, $device;
}
while (my $fh = $selector->can_read) {
# work
}
Example 4: testing for events on the command line
# information on what event queue belongs to what device
cat /proc/bus/input/devices
# verify that events are coming in
sudo evtest.pl /dev/input/event*
Download (0.006MB)
Added: 2007-01-25 License: Perl Artistic License Price:
1006 downloads
inetlib 0.4
inetlib is a small and optimized library for writing IRC bots and clients for Linux in C. more>>
inetlib is a small and optimized library for writing IRC bots and clients for Linux in C.
A small IRC bot that uses all the features of the library is included with the source.
Enhancements:
- New end-user funcions: irc_connect(), irc_disconnect(), irc_receive() and irc_check_ping.
- For raw input/output, the funcions _irc_raw_send() and _irc_raw_receive() have been updated.
- There arent global vars now.
<<lessA small IRC bot that uses all the features of the library is included with the source.
Enhancements:
- New end-user funcions: irc_connect(), irc_disconnect(), irc_receive() and irc_check_ping.
- For raw input/output, the funcions _irc_raw_send() and _irc_raw_receive() have been updated.
- There arent global vars now.
Download (0.047MB)
Added: 2006-03-24 License: GPL (GNU General Public License) Price:
1313 downloads
Smart Common Input Method platform 1.4.7
Smart Common Input Method platform is a development platform. more>>
Smart Common Input Method platform is a development platform that significantly reduces the difficulty of input method development.
SCIM splits input method into three parts: FrontEnd, which handles user interface and communication with client applications, Server, which handles the key event to string conversion work, and BackEnd, which manages all of the Servers.
Enhancements:
- The implementation of scim::Socket was improved for better error handling.
- A high power consumption issue caused by the X11 frontend was fixed.
<<lessSCIM splits input method into three parts: FrontEnd, which handles user interface and communication with client applications, Server, which handles the key event to string conversion work, and BackEnd, which manages all of the Servers.
Enhancements:
- The implementation of scim::Socket was improved for better error handling.
- A high power consumption issue caused by the X11 frontend was fixed.
Download (2.5MB)
Added: 2007-06-27 License: LGPL (GNU Lesser General Public License) Price:
852 downloads
Input Filter extension for PHP 0.11.0
Input Filter extension for PHP project is an extension for safely dealing with input parameters. more>>
Input Filter extension for PHP project is an extension for safely dealing with input parameters.
It is meant to address this issue by implementing a set of filters and mechanisms that users can use to safely access their input data.
<<lessIt is meant to address this issue by implementing a set of filters and mechanisms that users can use to safely access their input data.
Download (0.024MB)
Added: 2006-11-01 License: The PHP License Price:
1091 downloads
nautilus-audio-convert 0.1
Nautilus-audio-convert is an extension of the Gnome desktop manager Nautilus. more>>
Nautilus-audio-convert is an extension of the Gnome desktop manager Nautilus. nautilus-audio-convert introduces contextual menus hen clicking on an audio file.
The new menus permit to convert the audio file into other audio formats.
Supported audio formats are:
- Microsoft ASF (input)
- Microsoft PCM Waves (input/output)
- Mpeg3 (input/output)
- Ogg Vorbis (input/output)
<<lessThe new menus permit to convert the audio file into other audio formats.
Supported audio formats are:
- Microsoft ASF (input)
- Microsoft PCM Waves (input/output)
- Mpeg3 (input/output)
- Ogg Vorbis (input/output)
Download (0.025MB)
Added: 2006-02-01 License: GPL (GNU General Public License) Price:
1365 downloads
UTIN Firewall script
UTIN Firewall script project is a script for Linux 2.4.x and iptables. more>>
UTIN Firewall script project is a script for Linux 2.4.x and iptables.
###########
# Configuration options, these will speed you up getting this script to
# work with your own setup.
#
# your LANs IP range and localhost IP. /24 means to only use the first 24
# bits of the 32 bit IP adress. the same as netmask 255.255.255.0
#
# INET_IP is used by me to allow myself to do anything to myself, might
# be a security risc but sometimes I want this. If you dont have a static
# IP, I suggest not using this option at all for now but its still
# enabled per default and will add some really nifty security bugs for all
# those who skips reading the documentation=)
LAN_IP="192.168.0.2"
LAN_BCAST_ADRESS="192.168.0.255"
LAN_IFACE="eth1"
LO_IFACE="lo"
LO_IP="127.0.0.1"
INET_IP="194.236.50.155"
INET_IFACE="eth0"
IPTABLES="/usr/local/sbin/iptables"
#########
# Load all required IPTables modules
#
#
# Needed to initially load modules
#
/sbin/depmod -a
#
# Adds some iptables targets like LOG, REJECT and MASQUARADE.
#
/sbin/modprobe ipt_LOG
#/sbin/modprobe ipt_REJECT
/sbin/modprobe ipt_MASQUERADE
#
# Support for owner matching
#
#/sbin/modprobe ipt_owner
#
# Support for connection tracking of FTP and IRC.
#
#/sbin/modprobe ip_conntrack_ftp
#/sbin/modprobe ip_conntrack_irc
#
# Enable ip_forward, this is critical since it is turned off as defaul in
# Linux.
#
echo "1" > /proc/sys/net/ipv4/ip_forward
#
# Dynamic IP users:
#
#echo "1" > /proc/sys/net/ipv4/ip_dynaddr
#
# Enable simple IP Forwarding and Network Address Translation
#
$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j SNAT --to-source $INET_IP
#
# Set default policies for the INPUT, FORWARD and OUTPUT chains
#
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP
#
# bad_tcp_packets chain
#
# Take care of bad TCP packets that we dont want.
#
$IPTABLES -N bad_tcp_packets
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j LOG
--log-prefix "New not syn:"
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j DROP
#
# Do some checks for obviously spoofed IPs
#
$IPTABLES -A bad_tcp_packets -i $INET_IFACE -s 192.168.0.0/16 -j DROP
$IPTABLES -A bad_tcp_packets -i $INET_IFACE -s 10.0.0.0/8 -j DROP
$IPTABLES -A bad_tcp_packets -i $INET_IFACE -s 172.16.0.0/12 -j DROP
$IPTABLES -A bad_tcp_packets -i $LAN_IFACE ! -s 192.168.0.0/16 -j DROP
#
# Bad TCP packets we dont want
#
$IPTABLES -A FORWARD -p tcp -j bad_tcp_packets
#
# Accept the packets we actually want to forward between interfaces.
#
$IPTABLES -A FORWARD -p tcp --dport 21 -i $LAN_IFACE -j ACCEPT
$IPTABLES -A FORWARD -p tcp --dport 80 -i $LAN_IFACE -j ACCEPT
$IPTABLES -A FORWARD -p tcp --dport 110 -i $LAN_IFACE -j ACCEPT
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG
--log-level DEBUG --log-prefix "IPT FORWARD packet died: "
#
# Create separate chains for ICMP, TCP and UDP to traverse
#
$IPTABLES -N icmp_packets
$IPTABLES -N tcp_packets
$IPTABLES -N udpincoming_packets
#
# The allowed chain for TCP connections
#
$IPTABLES -N allowed
$IPTABLES -A allowed -p TCP --syn -j ACCEPT
$IPTABLES -A allowed -p TCP -m state --state ESTABLISHED,RELATED
-j ACCEPT
$IPTABLES -A allowed -p TCP -j DROP
#
# ICMP rules
#
# Changed rules totally
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT
#
# TCP rules
#
$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 21 -j allowed
$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 22 -j allowed
$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 80 -j allowed
$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 113 -j allowed
#
# UDP ports
#
$IPTABLES -A udpincoming_packets -p UDP -s 0/0 --source-port 53 -j ACCEPT
$IPTABLES -A udpincoming_packets -p UDP -s 0/0 --source-port 123 -j ACCEPT
$IPTABLES -A udpincoming_packets -p UDP -s 0/0 --source-port 2074 -j ACCEPT
$IPTABLES -A udpincoming_packets -p UDP -s 0/0 --source-port 4000 -j ACCEPT
#
# INPUT chain
#
# Bad TCP packets we dont want
#
$IPTABLES -A INPUT -p tcp -j bad_tcp_packets
#
# Rules for incoming packets from anywhere
#
$IPTABLES -A INPUT -p ICMP -j icmp_packets
$IPTABLES -A INPUT -p TCP -j tcp_packets
$IPTABLES -A INPUT -p UDP -j udpincoming_packets
#
# Rules for special networks not part of the Internet
#
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LO_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LAN_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $INET_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -d $INET_IP -m state --state ESTABLISHED,RELATED
-j ACCEPT
$IPTABLES -A INPUT -m limit --limit 3/minute --limit-burst 3
-j LOG --log-level DEBUG --log-prefix "IPT INPUT packet died: "
#
# OUTPUT chain
#
#
# Bad TCP packets we dont want
#
$IPTABLES -A OUTPUT -p tcp -j bad_tcp_packets
$IPTABLES -A OUTPUT -p ALL -s $LO_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $LAN_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $INET_IP -j ACCEPT
$IPTABLES -A OUTPUT -m limit --limit 3/minute --limit-burst 3
-j LOG --log-level DEBUG --log-prefix "IPT OUTPUT packet died: "
<<less###########
# Configuration options, these will speed you up getting this script to
# work with your own setup.
#
# your LANs IP range and localhost IP. /24 means to only use the first 24
# bits of the 32 bit IP adress. the same as netmask 255.255.255.0
#
# INET_IP is used by me to allow myself to do anything to myself, might
# be a security risc but sometimes I want this. If you dont have a static
# IP, I suggest not using this option at all for now but its still
# enabled per default and will add some really nifty security bugs for all
# those who skips reading the documentation=)
LAN_IP="192.168.0.2"
LAN_BCAST_ADRESS="192.168.0.255"
LAN_IFACE="eth1"
LO_IFACE="lo"
LO_IP="127.0.0.1"
INET_IP="194.236.50.155"
INET_IFACE="eth0"
IPTABLES="/usr/local/sbin/iptables"
#########
# Load all required IPTables modules
#
#
# Needed to initially load modules
#
/sbin/depmod -a
#
# Adds some iptables targets like LOG, REJECT and MASQUARADE.
#
/sbin/modprobe ipt_LOG
#/sbin/modprobe ipt_REJECT
/sbin/modprobe ipt_MASQUERADE
#
# Support for owner matching
#
#/sbin/modprobe ipt_owner
#
# Support for connection tracking of FTP and IRC.
#
#/sbin/modprobe ip_conntrack_ftp
#/sbin/modprobe ip_conntrack_irc
#
# Enable ip_forward, this is critical since it is turned off as defaul in
# Linux.
#
echo "1" > /proc/sys/net/ipv4/ip_forward
#
# Dynamic IP users:
#
#echo "1" > /proc/sys/net/ipv4/ip_dynaddr
#
# Enable simple IP Forwarding and Network Address Translation
#
$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j SNAT --to-source $INET_IP
#
# Set default policies for the INPUT, FORWARD and OUTPUT chains
#
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP
#
# bad_tcp_packets chain
#
# Take care of bad TCP packets that we dont want.
#
$IPTABLES -N bad_tcp_packets
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j LOG
--log-prefix "New not syn:"
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j DROP
#
# Do some checks for obviously spoofed IPs
#
$IPTABLES -A bad_tcp_packets -i $INET_IFACE -s 192.168.0.0/16 -j DROP
$IPTABLES -A bad_tcp_packets -i $INET_IFACE -s 10.0.0.0/8 -j DROP
$IPTABLES -A bad_tcp_packets -i $INET_IFACE -s 172.16.0.0/12 -j DROP
$IPTABLES -A bad_tcp_packets -i $LAN_IFACE ! -s 192.168.0.0/16 -j DROP
#
# Bad TCP packets we dont want
#
$IPTABLES -A FORWARD -p tcp -j bad_tcp_packets
#
# Accept the packets we actually want to forward between interfaces.
#
$IPTABLES -A FORWARD -p tcp --dport 21 -i $LAN_IFACE -j ACCEPT
$IPTABLES -A FORWARD -p tcp --dport 80 -i $LAN_IFACE -j ACCEPT
$IPTABLES -A FORWARD -p tcp --dport 110 -i $LAN_IFACE -j ACCEPT
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG
--log-level DEBUG --log-prefix "IPT FORWARD packet died: "
#
# Create separate chains for ICMP, TCP and UDP to traverse
#
$IPTABLES -N icmp_packets
$IPTABLES -N tcp_packets
$IPTABLES -N udpincoming_packets
#
# The allowed chain for TCP connections
#
$IPTABLES -N allowed
$IPTABLES -A allowed -p TCP --syn -j ACCEPT
$IPTABLES -A allowed -p TCP -m state --state ESTABLISHED,RELATED
-j ACCEPT
$IPTABLES -A allowed -p TCP -j DROP
#
# ICMP rules
#
# Changed rules totally
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT
#
# TCP rules
#
$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 21 -j allowed
$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 22 -j allowed
$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 80 -j allowed
$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 113 -j allowed
#
# UDP ports
#
$IPTABLES -A udpincoming_packets -p UDP -s 0/0 --source-port 53 -j ACCEPT
$IPTABLES -A udpincoming_packets -p UDP -s 0/0 --source-port 123 -j ACCEPT
$IPTABLES -A udpincoming_packets -p UDP -s 0/0 --source-port 2074 -j ACCEPT
$IPTABLES -A udpincoming_packets -p UDP -s 0/0 --source-port 4000 -j ACCEPT
#
# INPUT chain
#
# Bad TCP packets we dont want
#
$IPTABLES -A INPUT -p tcp -j bad_tcp_packets
#
# Rules for incoming packets from anywhere
#
$IPTABLES -A INPUT -p ICMP -j icmp_packets
$IPTABLES -A INPUT -p TCP -j tcp_packets
$IPTABLES -A INPUT -p UDP -j udpincoming_packets
#
# Rules for special networks not part of the Internet
#
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LO_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LAN_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $INET_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -d $INET_IP -m state --state ESTABLISHED,RELATED
-j ACCEPT
$IPTABLES -A INPUT -m limit --limit 3/minute --limit-burst 3
-j LOG --log-level DEBUG --log-prefix "IPT INPUT packet died: "
#
# OUTPUT chain
#
#
# Bad TCP packets we dont want
#
$IPTABLES -A OUTPUT -p tcp -j bad_tcp_packets
$IPTABLES -A OUTPUT -p ALL -s $LO_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $LAN_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $INET_IP -j ACCEPT
$IPTABLES -A OUTPUT -m limit --limit 3/minute --limit-burst 3
-j LOG --log-level DEBUG --log-prefix "IPT OUTPUT packet died: "
Download (MB)
Added: 2007-02-13 License: GPL (GNU General Public License) Price:
985 downloads
OTP 1.61
OTP is an encryption program that uses the one-time pad algorithm to allow two parties to communicate securely. more>>
OTP is an encryption program that uses the one-time pad algorithm to allow two parties to communicate securely, without worrying about unauthorized people listening in. OTP compresses plaintext input to save pad, has features that assist with the bureaucracy of pad management, and comes with built-in help. OTP project is written in the Python programming language and requires a Python interpreter to run.
To use OTP reliably, you need a source of good random data. On modern Unix systems, the /dev/random device is probably good enough (I havent done the math myself, Im just taking other peoples word for it). On non-Unix systems, youre on your own. Whatever your source of random data, store the data in a file (thats the "pad") and point to it using OTPs -p option when you encrypt; the recipient must use the same pad to decrypt, of course.
Note that the one-time pad method depends completely on the quality of the pad data; if the pad is not truly random, the security of your messages cannot be guaranteed. Never encrypt different plaintexts with the same stretch of pad — doing so could reveal some or all of the used pad to eavesdroppers. OTPs default behavior is to always avoid reusing pad data, unless you explicitly tell it otherwise.
And here is the output of otp --help:
OTP version 1.61, an encoder/decoder for one-time pads. Standard usage:
otp -e -p PAD INPUT (encrypt, write output to INPUT.otp)
otp -d -p PAD INPUT.otp (decrypt, strip .otp suffix on output)
Other usage modes:
otp [-e|-d] -p PAD INPUT -o OUTPUT (both INPUT and OUTPUT are files)
otp [-e|-d] -p PAD INPUT -o - (output goes to stdout)
otp [-e|-d] -p PAD (input from stdin, output to stdout)
otp [-e|-d] -p PAD -o OUTPUT (input from stdin, output to OUTPUT)
OTP remembers what ranges of what pad files have been used, and avoids re-using those ranges when encoding. Because OTP compresses plaintext input to save pad, encoding and decoding are not symmetrical; thus, OTP needs to be told whether it is encoding or decoding (-e or -d).
All options:
-e Encrypt
-d Decrypt
-p PAD | --pad=PAD Use PAD for pad data.
-o OUT | --output=OUT Output to file OUT ("-" for stdout)
--offset=N Control the pad data start offset
-n | --no-trace Leave no record of pad usage in your config
--no-vc Ignore SVN/CVS control of the config area
-C DIR | --config=DIR Specify DIR (instead of ~/.otp) as the config area
--intro Show an introduction to OTP and one-time pads
-v | -V | --version Show version information
-? | -h | --help Show usage
<<lessTo use OTP reliably, you need a source of good random data. On modern Unix systems, the /dev/random device is probably good enough (I havent done the math myself, Im just taking other peoples word for it). On non-Unix systems, youre on your own. Whatever your source of random data, store the data in a file (thats the "pad") and point to it using OTPs -p option when you encrypt; the recipient must use the same pad to decrypt, of course.
Note that the one-time pad method depends completely on the quality of the pad data; if the pad is not truly random, the security of your messages cannot be guaranteed. Never encrypt different plaintexts with the same stretch of pad — doing so could reveal some or all of the used pad to eavesdroppers. OTPs default behavior is to always avoid reusing pad data, unless you explicitly tell it otherwise.
And here is the output of otp --help:
OTP version 1.61, an encoder/decoder for one-time pads. Standard usage:
otp -e -p PAD INPUT (encrypt, write output to INPUT.otp)
otp -d -p PAD INPUT.otp (decrypt, strip .otp suffix on output)
Other usage modes:
otp [-e|-d] -p PAD INPUT -o OUTPUT (both INPUT and OUTPUT are files)
otp [-e|-d] -p PAD INPUT -o - (output goes to stdout)
otp [-e|-d] -p PAD (input from stdin, output to stdout)
otp [-e|-d] -p PAD -o OUTPUT (input from stdin, output to OUTPUT)
OTP remembers what ranges of what pad files have been used, and avoids re-using those ranges when encoding. Because OTP compresses plaintext input to save pad, encoding and decoding are not symmetrical; thus, OTP needs to be told whether it is encoding or decoding (-e or -d).
All options:
-e Encrypt
-d Decrypt
-p PAD | --pad=PAD Use PAD for pad data.
-o OUT | --output=OUT Output to file OUT ("-" for stdout)
--offset=N Control the pad data start offset
-n | --no-trace Leave no record of pad usage in your config
--no-vc Ignore SVN/CVS control of the config area
-C DIR | --config=DIR Specify DIR (instead of ~/.otp) as the config area
--intro Show an introduction to OTP and one-time pads
-v | -V | --version Show version information
-? | -h | --help Show usage
Download (0.025MB)
Added: 2006-06-02 License: Public Domain Price:
1247 downloads
Pydvdauthor 0.1
Pydvdauthor provides an easy-to-use interface for creating video DVDs, including support for chapters. more>>
Pydvdauthor provides an easy-to-use interface for creating video DVDs, including support for chapters. Pydvdauthor project does not yet generate menus.
Its output is the XML files needed for input to the dvdauthor program.
<<lessIts output is the XML files needed for input to the dvdauthor program.
Download (0.002MB)
Added: 2006-05-11 License: GPL (GNU General Public License) Price:
1264 downloads
IO::InSitu 0.0.2
IO::InSitu is a Perl module to avoid clobbering files opened for both input and output. more>>
IO::InSitu is a Perl module to avoid clobbering files opened for both input and output.
SYNOPSIS
use IO::InSitu;
my ($in, $out) = open_rw($infile_name, $outfile_name);
for my $line () {
$line =~ s/foo/bar/g;
print {$out} $line;
}
When users want to do in-situ processing on a file, they often specify it as both the input and output file:
> myapp -i sample_data -o sample_data -op=normalize
But, if the -i and -o flags are processed independently, the program will usually open the file for input, open it again for output (at which point the file will be truncated to zero length), and then attempt to read in the first line of the now-empty file:
# Open both filehandles...
use Fatal qw( open );
open my $src, , $destination_file;
# Read, process, and output data, line-by-line...
while (my $line = < $src >) {
print {$dest} transform($line);
}
Not only does this not perform the requested transformation on the file, it also destroys the original data. Fortunately, this problem is extremely easy to avoid: just make sure that you unlink the output file before you open it:
# Open both filehandles...
use Fatal qw( open );
open my $src, , $destination_file;
# Read, process, and output data, line-by-line...
while (my $line = ) {
print {$dest} transform($line);
}
If the input and output files are different, unlinking the output file merely removes a file that was about to be rewritten anyway. Then the second open simply recreates the output file, ready for writing.
If the two filenames actually refer to a single in-situ file, unlinking the output filename removes that filename from its directory, but doesnt remove the file itself from the filesystem. The file is already open through the filehandle in $input, so the filesystem will preserve the unlinked file until that input filehandle is closed. The second open then creates a new version of the in-situ file, ready for writing.
The only limitation of this technique is that it changes the inode of any in-situ file . That can be a problem if the file has any hard-linked aliases, or if other applications are identifying the file by its inode number. If either of those situations is possible, you can preserve the in-situ files inode by using the open_rw() subroutine that is exported from this module:
# Open both filehandles...
use IO::InSitu;
my ($src, $dest) = open_rw($source_file, $destination_file);
# Read, process, and output data, line-by-line...
while (my $line = ) {
print {$dest} transform($line);
}
<<lessSYNOPSIS
use IO::InSitu;
my ($in, $out) = open_rw($infile_name, $outfile_name);
for my $line () {
$line =~ s/foo/bar/g;
print {$out} $line;
}
When users want to do in-situ processing on a file, they often specify it as both the input and output file:
> myapp -i sample_data -o sample_data -op=normalize
But, if the -i and -o flags are processed independently, the program will usually open the file for input, open it again for output (at which point the file will be truncated to zero length), and then attempt to read in the first line of the now-empty file:
# Open both filehandles...
use Fatal qw( open );
open my $src, , $destination_file;
# Read, process, and output data, line-by-line...
while (my $line = < $src >) {
print {$dest} transform($line);
}
Not only does this not perform the requested transformation on the file, it also destroys the original data. Fortunately, this problem is extremely easy to avoid: just make sure that you unlink the output file before you open it:
# Open both filehandles...
use Fatal qw( open );
open my $src, , $destination_file;
# Read, process, and output data, line-by-line...
while (my $line = ) {
print {$dest} transform($line);
}
If the input and output files are different, unlinking the output file merely removes a file that was about to be rewritten anyway. Then the second open simply recreates the output file, ready for writing.
If the two filenames actually refer to a single in-situ file, unlinking the output filename removes that filename from its directory, but doesnt remove the file itself from the filesystem. The file is already open through the filehandle in $input, so the filesystem will preserve the unlinked file until that input filehandle is closed. The second open then creates a new version of the in-situ file, ready for writing.
The only limitation of this technique is that it changes the inode of any in-situ file . That can be a problem if the file has any hard-linked aliases, or if other applications are identifying the file by its inode number. If either of those situations is possible, you can preserve the in-situ files inode by using the open_rw() subroutine that is exported from this module:
# Open both filehandles...
use IO::InSitu;
my ($src, $dest) = open_rw($source_file, $destination_file);
# Read, process, and output data, line-by-line...
while (my $line = ) {
print {$dest} transform($line);
}
Download (0.006MB)
Added: 2007-01-16 License: Perl Artistic License Price:
1011 downloads
Strings edit 1.9
Strings edit is a library that provides I/O facilities for integer, floating-point, Roman numbers, and strings. more>>
Strings edit is a library that provides I/O facilities for integer, floating-point, Roman numbers, and strings. Both input and output subroutines support string pointers for consequent stream processing. The output can be aligned in a fixed size field with padding.
Numeric input can be checked against expected values range to be either saturated or to raise an exception. For floating-point output either relative or absolute output precision can be specified. UTF-8 encoded strings are supported.
Enhancements:
- GPS project files were added for GNAT users.
- A bug was fixed in Strings_Edit.Generic_Scale in which the caclculated precision was of the minor scale tick rather than of the major tick.
<<lessNumeric input can be checked against expected values range to be either saturated or to raise an exception. For floating-point output either relative or absolute output precision can be specified. UTF-8 encoded strings are supported.
Enhancements:
- GPS project files were added for GNAT users.
- A bug was fixed in Strings_Edit.Generic_Scale in which the caclculated precision was of the minor scale tick rather than of the major tick.
Download (0.053MB)
Added: 2007-05-20 License: GMGPL (GNAT Modified GPL) Price:
908 downloads
libspectrum 0.2.2
libspectrum is a library designed to make the input and output of some ZX Spectrum emulator files slightly easier. more>>
libspectrum is a library designed to make the input and output of some ZX Spectrum emulator files slightly easier.
libspectrum is intended to be usable on Unix variants, Mac OS X and Win32. Currently, it is mainly (only?) used by Fuse, but other Spectrum emulator and utility authors are encouraged to use it.
Which formats does it support?
Snapshots:
read/write: .z80, .szx, .sna
read only: .zxs, .sp., .snp, +D snapshots
Tape images:
read/write: .tzx, .tap
read only: Warajevo .tap
Input recordings:
read/write: .rzx
Timex cartridges:
read only: .dck
Compressed files: reading of gzipped and bzipped files is transparently supported.
<<lesslibspectrum is intended to be usable on Unix variants, Mac OS X and Win32. Currently, it is mainly (only?) used by Fuse, but other Spectrum emulator and utility authors are encouraged to use it.
Which formats does it support?
Snapshots:
read/write: .z80, .szx, .sna
read only: .zxs, .sp., .snp, +D snapshots
Tape images:
read/write: .tzx, .tap
read only: Warajevo .tap
Input recordings:
read/write: .rzx
Timex cartridges:
read only: .dck
Compressed files: reading of gzipped and bzipped files is transparently supported.
Download (MB)
Added: 2006-09-26 License: GPL (GNU General Public License) Price:
1125 downloads
KABC Client 0.8.1
KABC Client is a command line tool that provides access to the KDE address book. more>>
KABC Client is a command line tool that provides access to the KDE address book, which is also used by applications like KAddressBook.
It can take its input from either the command line or through standard input, allowing its use in Unix shell pipe and filter constructs. Input and output text is interpreted and formatted by filters.
kabcclient can perform the following operations:
- List: --list or -L
Write all contacts of the addressbook to stdout
- Search: --search or -S
Search for contacts matching the programs input
- Add: --add or -A
Add new contacts to the addressbook
- Remove: --remove or -R
Remove contacts matching the programs input from the addressbook
- Merge: --merge or -M
Add data from the programs input to matching contacts in the addressbook
Enhancements:
- Adding installation instructions and build files for creating Debian packages.
- No changes to the program itself!
<<lessIt can take its input from either the command line or through standard input, allowing its use in Unix shell pipe and filter constructs. Input and output text is interpreted and formatted by filters.
kabcclient can perform the following operations:
- List: --list or -L
Write all contacts of the addressbook to stdout
- Search: --search or -S
Search for contacts matching the programs input
- Add: --add or -A
Add new contacts to the addressbook
- Remove: --remove or -R
Remove contacts matching the programs input from the addressbook
- Merge: --merge or -M
Add data from the programs input to matching contacts in the addressbook
Enhancements:
- Adding installation instructions and build files for creating Debian packages.
- No changes to the program itself!
Download (0.25MB)
Added: 2005-08-31 License: GPL (GNU General Public License) Price:
1514 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above input output search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed