raw socket
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 873
Raw Socket Library 2.1
Raw Socket Library provides a simple to use raw socket library with IPV6 support. more>>
Raw Socket Library provides a simple to use raw socket library with IPV6 support.
Raw Socket Library provides a simple mechanism to send raw socket packet using IPV4 and IPV6 using a simple struct.
It currently supports TCP, ICMP, UDP, and ICMPv6.
Enhancements:
- ARP has been added but not tested. More IP4 options can be changed at code time now.
<<lessRaw Socket Library provides a simple mechanism to send raw socket packet using IPV4 and IPV6 using a simple struct.
It currently supports TCP, ICMP, UDP, and ICMPv6.
Enhancements:
- ARP has been added but not tested. More IP4 options can be changed at code time now.
Download (0.012MB)
Added: 2007-03-22 License: GPL (GNU General Public License) Price:
963 downloads
Raw Socket Constructor 2.1a
Raw Socket Constructor provides a tool for sending packets from the console. more>>
Raw Socket Constructor provides a tool for sending packets from the console.
Raw Socket Constructor is a tool that uses the Libsock library to create arbitrary TCP, ICMP, UDP, TCP6, ICMP6, or UDP6 packets.
<<lessRaw Socket Constructor is a tool that uses the Libsock library to create arbitrary TCP, ICMP, UDP, TCP6, ICMP6, or UDP6 packets.
Download (0.008MB)
Added: 2007-03-22 License: GPL (GNU General Public License) Price:
950 downloads
Socket 5.8.8
Socket, sockaddr_in, sockaddr_un, inet_aton, inet_ntoa is a Perl module to load the C socket.h defines and structure manipulator more>>
Socket, sockaddr_in, sockaddr_un, inet_aton, inet_ntoa is a Perl module to load the C socket.h defines and structure manipulators.
SYNOPSIS
use Socket;
$proto = getprotobyname(udp);
socket(Socket_Handle, PF_INET, SOCK_DGRAM, $proto);
$iaddr = gethostbyname(hishost.com);
$port = getservbyname(time, udp);
$sin = sockaddr_in($port, $iaddr);
send(Socket_Handle, 0, 0, $sin);
$proto = getprotobyname(tcp);
socket(Socket_Handle, PF_INET, SOCK_STREAM, $proto);
$port = getservbyname(smtp, tcp);
$sin = sockaddr_in($port,inet_aton("127.1"));
$sin = sockaddr_in(7,inet_aton("localhost"));
$sin = sockaddr_in(7,INADDR_LOOPBACK);
connect(Socket_Handle,$sin);
($port, $iaddr) = sockaddr_in(getpeername(Socket_Handle));
$peer_host = gethostbyaddr($iaddr, AF_INET);
$peer_addr = inet_ntoa($iaddr);
$proto = getprotobyname(tcp);
socket(Socket_Handle, PF_UNIX, SOCK_STREAM, $proto);
unlink(/var/run/usock);
$sun = sockaddr_un(/var/run/usock);
connect(Socket_Handle,$sun);
This module is just a translation of the C socket.h file. Unlike the old mechanism of requiring a translated socket.ph file, this uses the h2xs program (see the Perl source distribution) and your native C compiler. This means that it has a far more likely chance of getting the numbers right. This includes all of the commonly used pound-defines like AF_INET, SOCK_STREAM, etc.
<<lessSYNOPSIS
use Socket;
$proto = getprotobyname(udp);
socket(Socket_Handle, PF_INET, SOCK_DGRAM, $proto);
$iaddr = gethostbyname(hishost.com);
$port = getservbyname(time, udp);
$sin = sockaddr_in($port, $iaddr);
send(Socket_Handle, 0, 0, $sin);
$proto = getprotobyname(tcp);
socket(Socket_Handle, PF_INET, SOCK_STREAM, $proto);
$port = getservbyname(smtp, tcp);
$sin = sockaddr_in($port,inet_aton("127.1"));
$sin = sockaddr_in(7,inet_aton("localhost"));
$sin = sockaddr_in(7,INADDR_LOOPBACK);
connect(Socket_Handle,$sin);
($port, $iaddr) = sockaddr_in(getpeername(Socket_Handle));
$peer_host = gethostbyaddr($iaddr, AF_INET);
$peer_addr = inet_ntoa($iaddr);
$proto = getprotobyname(tcp);
socket(Socket_Handle, PF_UNIX, SOCK_STREAM, $proto);
unlink(/var/run/usock);
$sun = sockaddr_un(/var/run/usock);
connect(Socket_Handle,$sun);
This module is just a translation of the C socket.h file. Unlike the old mechanism of requiring a translated socket.ph file, this uses the h2xs program (see the Perl source distribution) and your native C compiler. This means that it has a far more likely chance of getting the numbers right. This includes all of the commonly used pound-defines like AF_INET, SOCK_STREAM, etc.
Download (12.2MB)
Added: 2007-05-11 License: Perl Artistic License Price:
900 downloads
Danga::Socket 1.56
Danga::Socket is an event loop and event-driven async socket base class. more>>
Danga::Socket is an event loop and event-driven async socket base class.
SYNOPSIS
package My::Socket
use Danga::Socket;
use base (Danga::Socket);
use fields (my_attribute);
sub new {
my My::Socket $self = shift;
$self = fields::new($self) unless ref $self;
$self->SUPER::new( @_ );
$self->{my_attribute} = 1234;
return $self;
}
sub event_err { ... }
sub event_hup { ... }
sub event_write { ... }
sub event_read { ... }
sub close { ... }
$my_sock->tcp_cork($bool);
# write returns 1 if all writes have gone through, or 0 if there
# are writes in queue
$my_sock->write($scalar);
$my_sock->write($scalarref);
$my_sock->write(sub { ... }); # run when previous data written
$my_sock->write(undef); # kick-starts
# read max $bytecount bytes, or undef on connection closed
$scalar_ref = $my_sock->read($bytecount);
# watch for writability. not needed with ->write(). write()
# will automatically turn on watch_write when you wrote too much
# and turn it off when done
$my_sock->watch_write($bool);
# watch for readability
$my_sock->watch_read($bool);
# if you read too much and want to push some back on
# readable queue. (not incredibly well-tested)
$my_sock->push_back_read($buf); # scalar or scalar ref
Danga::Socket->AddOtherFds(..);
Danga::Socket->SetLoopTimeout($millisecs);
Danga::Socket->DescriptorMap();
Danga::Socket->WatchedSockets(); # count of DescriptorMap keys
Danga::Socket->SetPostLoopCallback($code);
Danga::Socket->EventLoop();
This is an abstract base class for objects backed by a socket which provides the basic framework for event-driven asynchronous IO, designed to be fast. Danga::Socket is both a base class for objects, and an event loop.
Callers subclass Danga::Socket. Danga::Sockets constructor registers itself with the Danga::Socket event loop, and invokes callbacks on the object for readability, writability, errors, and other conditions.
Because Danga::Socket uses the "fields" module, your subclasses must too.
<<lessSYNOPSIS
package My::Socket
use Danga::Socket;
use base (Danga::Socket);
use fields (my_attribute);
sub new {
my My::Socket $self = shift;
$self = fields::new($self) unless ref $self;
$self->SUPER::new( @_ );
$self->{my_attribute} = 1234;
return $self;
}
sub event_err { ... }
sub event_hup { ... }
sub event_write { ... }
sub event_read { ... }
sub close { ... }
$my_sock->tcp_cork($bool);
# write returns 1 if all writes have gone through, or 0 if there
# are writes in queue
$my_sock->write($scalar);
$my_sock->write($scalarref);
$my_sock->write(sub { ... }); # run when previous data written
$my_sock->write(undef); # kick-starts
# read max $bytecount bytes, or undef on connection closed
$scalar_ref = $my_sock->read($bytecount);
# watch for writability. not needed with ->write(). write()
# will automatically turn on watch_write when you wrote too much
# and turn it off when done
$my_sock->watch_write($bool);
# watch for readability
$my_sock->watch_read($bool);
# if you read too much and want to push some back on
# readable queue. (not incredibly well-tested)
$my_sock->push_back_read($buf); # scalar or scalar ref
Danga::Socket->AddOtherFds(..);
Danga::Socket->SetLoopTimeout($millisecs);
Danga::Socket->DescriptorMap();
Danga::Socket->WatchedSockets(); # count of DescriptorMap keys
Danga::Socket->SetPostLoopCallback($code);
Danga::Socket->EventLoop();
This is an abstract base class for objects backed by a socket which provides the basic framework for event-driven asynchronous IO, designed to be fast. Danga::Socket is both a base class for objects, and an event loop.
Callers subclass Danga::Socket. Danga::Sockets constructor registers itself with the Danga::Socket event loop, and invokes callbacks on the object for readability, writability, errors, and other conditions.
Because Danga::Socket uses the "fields" module, your subclasses must too.
Download (0.018MB)
Added: 2007-04-16 License: Perl Artistic License Price:
924 downloads
Raw Fake AP 0.2
Raw Fake AP is a program that emulates valid IEEE 802.11 access points using wireless raw injection. more>>
Raw Fake AP is a program that emulates valid IEEE 802.11 access points using wireless raw injection.
Raw Fake AP application aims to create both beacon and probe response frames and could be used to "hide" real networks from novice wardrivers or for testing wireless intrusion detection systems.
Main features:
Overall features:
- Raw injection of beacon and probe response frames in monitor mode
- Try to forge coherent sequence numbers and BSS timestamps (depending on driver injection capabilities)
- Try to have a coherent time interval between beacons (which is hard to achieve without a real time kernel)
Command line interface will help you to choose between:
- Randomize Open/WEP/WPA/RSN crypto
- Randomize b/g cards
- Channel hopping
- TXpower hopping
- Randomize ESSIDs (alnum or not)
- Randomize BSSIDs
- Choose beacon interval
- Choose number of fake access points
- Choose a file with valid OUIs
- Choose a file with ESSIDs
- Choose between beacon or probe response frames
- Select a destination MAC address
<<lessRaw Fake AP application aims to create both beacon and probe response frames and could be used to "hide" real networks from novice wardrivers or for testing wireless intrusion detection systems.
Main features:
Overall features:
- Raw injection of beacon and probe response frames in monitor mode
- Try to forge coherent sequence numbers and BSS timestamps (depending on driver injection capabilities)
- Try to have a coherent time interval between beacons (which is hard to achieve without a real time kernel)
Command line interface will help you to choose between:
- Randomize Open/WEP/WPA/RSN crypto
- Randomize b/g cards
- Channel hopping
- TXpower hopping
- Randomize ESSIDs (alnum or not)
- Randomize BSSIDs
- Choose beacon interval
- Choose number of fake access points
- Choose a file with valid OUIs
- Choose a file with ESSIDs
- Choose between beacon or probe response frames
- Select a destination MAC address
Download (0.013MB)
Added: 2006-02-08 License: GPL (GNU General Public License) Price:
1380 downloads
SocketW r031026
SocketW project is a cross platform (Linux/FreeBSD/Unix/Win32) streaming socket C++ library designed to be easy to use. more>>
SocketW project is a cross platform (Linux/FreeBSD/Unix/Win32) streaming socket C++ library designed to be easy to use.
It supports Unix sockets and TCP/IP sockets with optional SSL/TLS (OpenSSL) support. SocketW allows you to write portable and secure network applications quickly without needing to spend time learning low-level system functions or reading OpenSSL manuals.
<<lessIt supports Unix sockets and TCP/IP sockets with optional SSL/TLS (OpenSSL) support. SocketW allows you to write portable and secure network applications quickly without needing to spend time learning low-level system functions or reading OpenSSL manuals.
Download (0.046MB)
Added: 2006-09-11 License: GPL (GNU General Public License) Price:
1138 downloads
Rawstudio 0.6
Rawstudio is an open source raw-image converter written in GTK+. more>>
Rawstudio is an open source raw-image converter written in GTK+.
Rawstudio can read and convert RAW-images from many different cameras, including Nikon and Canon. It uses dcraw.
Main features:
- Reads all dcraw supported formats
- Internal 16bit rgb
- Various post-shot controls (white balance, saturation and exposure compensation among others)
- Realtime histogram
<<lessRawstudio can read and convert RAW-images from many different cameras, including Nikon and Canon. It uses dcraw.
Main features:
- Reads all dcraw supported formats
- Internal 16bit rgb
- Various post-shot controls (white balance, saturation and exposure compensation among others)
- Realtime histogram
Download (0.26MB)
Added: 2007-08-14 License: GPL (GNU General Public License) Price:
813 downloads
gnome-socket 0.1.0
gnome-socket provides a simple library for high-level network asynchronous I/O in GNOME applications. more>>
gnome-socket provides a simple library for high-level network asynchronous I/O in GNOME applications.
gnome-socket is a library that provides simple high-level network access to GNOME applications. Its main features are asynchronous DNS lookup and non-blocking network I/O.
Its designed to use the very flexible glib event loop in order to make integration with GNOME programs easy.
<<lessgnome-socket is a library that provides simple high-level network access to GNOME applications. Its main features are asynchronous DNS lookup and non-blocking network I/O.
Its designed to use the very flexible glib event loop in order to make integration with GNOME programs easy.
Download (0.18MB)
Added: 2007-04-18 License: LGPL (GNU Lesser General Public License) Price:
922 downloads
Libsocketcpp 1.0.7
Libsocketcpp provides a easy-to-use C++ socket library for TCP and UDP functionality. more>>
Libsocketcpp provides a easy-to-use C++ socket library class.
Dispite the name, the TCPSocket class can handle both UDP and TCP connections.
Unfortunatly right now, the class is simple. It does not do anything really fancy like non-blocking sockets, select which interfaces you want to use, etc...
What it does allow you to do is to set up a TCP or UDP server/client and send and receive blocks of data. Plain and simple
Enhancements:
- Fixed missing include inside tcpservertest test program.
- Should be able to compile on RH 7.0 now.
<<lessDispite the name, the TCPSocket class can handle both UDP and TCP connections.
Unfortunatly right now, the class is simple. It does not do anything really fancy like non-blocking sockets, select which interfaces you want to use, etc...
What it does allow you to do is to set up a TCP or UDP server/client and send and receive blocks of data. Plain and simple
Enhancements:
- Fixed missing include inside tcpservertest test program.
- Should be able to compile on RH 7.0 now.
Download (0.14MB)
Added: 2006-09-08 License: GPL (GNU General Public License) Price:
1142 downloads
CPP Socket library 0.8.4
CPP Socket library is a small Classlibrary for C++ that supports a easy usage of socket-programming for networking-software. more>>
CPP Socket library is a small Classlibrary for C++ that supports a easy usage of socket-programming for networking-software.
It provides a simple object-oriented interface to the classic C library calls.
With CPPSocket supports the following network protocols:
- TCP (transmission control protocol; needs an established connection from one host to another)
- UDP (user datagram protocol; packets can be sent without an established connection)
- IPv4 (internet protocol version 4; uses 32-bit network addresses)
These protocols are what may also be called TCP/IP.
The library provides two layers of abstraction:
- Low-Level
This is a simple oo interface of the classic socket calls. But it provides some (optional) abstractions for addressing and buffering.
Usefull for more experienced programmers, that have already worked with classic sockets.
- High-Level
This provides somewhat more abstraction and ignores some functionality of the full blown sockets.
But nevertheless it is quite usefull and makes programming of networking software very easy.
So its intended to be used by novice programmers or those who dont want the maximum complexity/flexibility but an easy to use network-interface.
<<lessIt provides a simple object-oriented interface to the classic C library calls.
With CPPSocket supports the following network protocols:
- TCP (transmission control protocol; needs an established connection from one host to another)
- UDP (user datagram protocol; packets can be sent without an established connection)
- IPv4 (internet protocol version 4; uses 32-bit network addresses)
These protocols are what may also be called TCP/IP.
The library provides two layers of abstraction:
- Low-Level
This is a simple oo interface of the classic socket calls. But it provides some (optional) abstractions for addressing and buffering.
Usefull for more experienced programmers, that have already worked with classic sockets.
- High-Level
This provides somewhat more abstraction and ignores some functionality of the full blown sockets.
But nevertheless it is quite usefull and makes programming of networking software very easy.
So its intended to be used by novice programmers or those who dont want the maximum complexity/flexibility but an easy to use network-interface.
Download (MB)
Added: 2006-09-07 License: GPL (GNU General Public License) Price:
678 downloads
deja-packet 1.0
deja-packet transmits raw packets through a specified interface. more>>
deja-packet transmits raw packets through a specified interface.
Usage: ./deja-packet -pcap < libpcap capture file > < interface name >
or: ./deja-packet -raw < raw packet file > < interface name >
Note: you must be root to successfully transmit packets with deja-packet due to the Linux security restrictions with raw sockets.
In the [-p]cap mode, deja-packet transmits selected packets from a libpcap capture file (such as one created by Ethereal/Wireshark, or tcpdump). In the [-r]aw mode, deja-packet transmits the raw contents of a file as one whole packet.
The [-p]cap mode is interactive: the user will be continuously prompted to select which packet from the libpcap capture file to transmit, until the “q” character is encountered, where the program will quit.
Example pcap mode:
$ sudo ./deja-packet -p icmp_ping.pcap eth0
Select packet number (1 to 6) for transmission or q for quit: 1
Successfully transmitted packet!
Select packet number (1 to 6) for transmission or q for quit: 2
Successfully transmitted packet!
Select packet number (1 to 6) for transmission or q for quit: 5
Successfully transmitted packet!
Select packet number (1 to 6) for transmission or q for quit: 6
Successfully transmitted packet!
Select packet number (1 to 6) for transmission or q for quit: q
$
In the [-r]aw mode, deja-packet exits immediately after the attempted transmission is complete (allows deja-packet to be easily used with a script).
Example raw mode:
$ sudo ./deja-packet -r samplepacket eth0
Successfully transmitted packet!
$
icmp_ping.pcap is included as a sample libpcap capture file.
To compile deja-packet, simply use the command “make”.
deja-packet remains Linux-only because it requires PF_PACKET sockets.
This project is released under the GNU General Public License version 2.
<<lessUsage: ./deja-packet -pcap < libpcap capture file > < interface name >
or: ./deja-packet -raw < raw packet file > < interface name >
Note: you must be root to successfully transmit packets with deja-packet due to the Linux security restrictions with raw sockets.
In the [-p]cap mode, deja-packet transmits selected packets from a libpcap capture file (such as one created by Ethereal/Wireshark, or tcpdump). In the [-r]aw mode, deja-packet transmits the raw contents of a file as one whole packet.
The [-p]cap mode is interactive: the user will be continuously prompted to select which packet from the libpcap capture file to transmit, until the “q” character is encountered, where the program will quit.
Example pcap mode:
$ sudo ./deja-packet -p icmp_ping.pcap eth0
Select packet number (1 to 6) for transmission or q for quit: 1
Successfully transmitted packet!
Select packet number (1 to 6) for transmission or q for quit: 2
Successfully transmitted packet!
Select packet number (1 to 6) for transmission or q for quit: 5
Successfully transmitted packet!
Select packet number (1 to 6) for transmission or q for quit: 6
Successfully transmitted packet!
Select packet number (1 to 6) for transmission or q for quit: q
$
In the [-r]aw mode, deja-packet exits immediately after the attempted transmission is complete (allows deja-packet to be easily used with a script).
Example raw mode:
$ sudo ./deja-packet -r samplepacket eth0
Successfully transmitted packet!
$
icmp_ping.pcap is included as a sample libpcap capture file.
To compile deja-packet, simply use the command “make”.
deja-packet remains Linux-only because it requires PF_PACKET sockets.
This project is released under the GNU General Public License version 2.
Download (0.004MB)
Added: 2007-07-04 License: GPL (GNU General Public License) Price:
847 downloads
Simple Sockets Library 7c
Simple Sockets Library provides a simple C programming interface to sockets. more>>
Simple Sockets Library provides a simple C programming interface to sockets.
The Simple Sockets Library makes sockets easy to use and comes as public domain source code. It resembles Cs file I/O, uses whatever port is available, has named servers and port reuse, streaming/blocking sockets used, polling support, blocking/selection support via numerous functions, timeout control and firewall support.
Main features:
- Resembles Cs file i/o:
- Sclose() Sgets() Sopen() Sprintf() Sputs() Sread() Sscanf() Swrite() Svprintf()
- Uses currently available ports only, so if a server can be brought up, it will be
- Named sockets -- servers have names, not fixed port addresses!
- (no more REUSEADDR problems, linger setting, zombie sockets!)
- Streaming/blocking sockets used
- Polling supported (ie. avoids blocking):
- Stest() Smasktest() Speek()
- Numerous functions to handle multiple concurrent clients:
- Smaskfdset() Smaskpush() Smasktime() Smaskunset() Smaskwait()
- Smaskget() Smaskset() Smaskunfdset() Smaskuse() Sprtmask()
- Smaskpop() Smasktest()
- Timeout control:
- Stimeoutwait() Smasktime()
- The PortMaster (Spm): Maintains a distributed port/server-name database Each machine runs a PortMaster which maps servers by name to their ports (transparent to programmers and users!)
- Firewall Support
- The PortMaster can (optionally) only "put through" connections from approved machine sites
- Supports "path"ing for sockets: one can use an environment variable to track down a server, by name, on any machine in a group:
- Sopenv()
- Doesnt need root privileges (thats Unix lingo...)
- Now supports fixed ports (servers and/or clients) to facilitate interfacing to non-SSL servers/clients
The Simple Sockets Librarys main purpose is to provide an Application Programming Interface that strongly resembles the standard C librarys file handling interface. Thus programmers find that the Simple Sockets Librarys learning curve is particularly short. As a secondary purpose the Simple Sockets Library helps programmers avoid some common programming problems with sockets (avoided: large buffers that dont transfer in their entirety without special effort, the Nagle algorithms practical effect of often limiting one to five transfers per second, servers whose ports refuse to re-open until two minutes have passed, etc). Strings are null-byte terminated just like regular C/C++ strings, facilitating their ease of use in C/C++ programming.
The Simple Sockets Library preferentially uses names for its servers rather than requiring hard-coded port numbers. Imagine if, instead of files having names, everyone went about saying "use sector 4 and track 14" or somesuch thing. This situation reflects what we now have with sockets -- and when two programs use the same port number for their servers, they cant co-exist simultaneously on a system. However, especially for those whose programs must interface with other programs using hard-coded port numbers, the Simple Socket Library also supports hard-code port numbers.
The Simple Sockets Library opens streaming sockets. Thus the Simple Sockets Librarys sockets provide guaranteed delivery of information in the correct order (unlike datagrams, for example).
The PortMaster (Spm), source code for which is part of the library, provides a "phonebook" to map server names to dynamically allocated port numbers. Port numbers thus wont clash; the operating system determines which ones are currently available and the PortMasters effectively publish the result.
Enhancements:
- (Marcel Satchel) improved for Windows
- (Aug 22, 2005) included the "b" option for Sopen() (block until requested server becomes available)
- (Marcel Satchel) Sinit.c fixed (yet again!)
<<lessThe Simple Sockets Library makes sockets easy to use and comes as public domain source code. It resembles Cs file I/O, uses whatever port is available, has named servers and port reuse, streaming/blocking sockets used, polling support, blocking/selection support via numerous functions, timeout control and firewall support.
Main features:
- Resembles Cs file i/o:
- Sclose() Sgets() Sopen() Sprintf() Sputs() Sread() Sscanf() Swrite() Svprintf()
- Uses currently available ports only, so if a server can be brought up, it will be
- Named sockets -- servers have names, not fixed port addresses!
- (no more REUSEADDR problems, linger setting, zombie sockets!)
- Streaming/blocking sockets used
- Polling supported (ie. avoids blocking):
- Stest() Smasktest() Speek()
- Numerous functions to handle multiple concurrent clients:
- Smaskfdset() Smaskpush() Smasktime() Smaskunset() Smaskwait()
- Smaskget() Smaskset() Smaskunfdset() Smaskuse() Sprtmask()
- Smaskpop() Smasktest()
- Timeout control:
- Stimeoutwait() Smasktime()
- The PortMaster (Spm): Maintains a distributed port/server-name database Each machine runs a PortMaster which maps servers by name to their ports (transparent to programmers and users!)
- Firewall Support
- The PortMaster can (optionally) only "put through" connections from approved machine sites
- Supports "path"ing for sockets: one can use an environment variable to track down a server, by name, on any machine in a group:
- Sopenv()
- Doesnt need root privileges (thats Unix lingo...)
- Now supports fixed ports (servers and/or clients) to facilitate interfacing to non-SSL servers/clients
The Simple Sockets Librarys main purpose is to provide an Application Programming Interface that strongly resembles the standard C librarys file handling interface. Thus programmers find that the Simple Sockets Librarys learning curve is particularly short. As a secondary purpose the Simple Sockets Library helps programmers avoid some common programming problems with sockets (avoided: large buffers that dont transfer in their entirety without special effort, the Nagle algorithms practical effect of often limiting one to five transfers per second, servers whose ports refuse to re-open until two minutes have passed, etc). Strings are null-byte terminated just like regular C/C++ strings, facilitating their ease of use in C/C++ programming.
The Simple Sockets Library preferentially uses names for its servers rather than requiring hard-coded port numbers. Imagine if, instead of files having names, everyone went about saying "use sector 4 and track 14" or somesuch thing. This situation reflects what we now have with sockets -- and when two programs use the same port number for their servers, they cant co-exist simultaneously on a system. However, especially for those whose programs must interface with other programs using hard-coded port numbers, the Simple Socket Library also supports hard-code port numbers.
The Simple Sockets Library opens streaming sockets. Thus the Simple Sockets Librarys sockets provide guaranteed delivery of information in the correct order (unlike datagrams, for example).
The PortMaster (Spm), source code for which is part of the library, provides a "phonebook" to map server names to dynamically allocated port numbers. Port numbers thus wont clash; the operating system determines which ones are currently available and the PortMasters effectively publish the result.
Enhancements:
- (Marcel Satchel) improved for Windows
- (Aug 22, 2005) included the "b" option for Sopen() (block until requested server becomes available)
- (Marcel Satchel) Sinit.c fixed (yet again!)
Download (0.18MB)
Added: 2007-03-13 License: Public Domain Price:
962 downloads
UFRaw-Assist 0.20
UFRaw-Assist project will use the command-line batch facility of UFRaw, to apply raw conversion on a batch of similar images. more>>
UFRaw-Assist project will use the command-line batch facility of UFRaw, combined with the ImageMagick Convert program to apply raw conversion on a batch of similar images.
The raw conversion can either be done on the basis of the options in the UFRaw-Assist only, an existing *.ufraw ID file created from one of the images or a "standardized" configuration file previously created.
UFRaw-Assist uses the new wavelet noise reduction facility that is being adapted for UFRaw by its creator, Udi Fuchs, on the basis of the original DCRaw by Dave Coffins. For this it is necessary to use the CVS version of UFRaw or version 0.12 when it is released.
Images can be converted to several file formats and sharpened with IMs unsharp mask facility. If so required, a web thumbnail can be generated with selected framecolors and text annotation.
UFRaw-Assist works either through a Konqueror servicemenu (select group of raw files, right-click and choose "Process raw image") or as a drop-target on the Desktop (drag and drop raw files on the desktop icon).
<<lessThe raw conversion can either be done on the basis of the options in the UFRaw-Assist only, an existing *.ufraw ID file created from one of the images or a "standardized" configuration file previously created.
UFRaw-Assist uses the new wavelet noise reduction facility that is being adapted for UFRaw by its creator, Udi Fuchs, on the basis of the original DCRaw by Dave Coffins. For this it is necessary to use the CVS version of UFRaw or version 0.12 when it is released.
Images can be converted to several file formats and sharpened with IMs unsharp mask facility. If so required, a web thumbnail can be generated with selected framecolors and text annotation.
UFRaw-Assist works either through a Konqueror servicemenu (select group of raw files, right-click and choose "Process raw image") or as a drop-target on the Desktop (drag and drop raw files on the desktop icon).
Download (0.017MB)
Added: 2007-06-15 License: GPL (GNU General Public License) Price:
862 downloads
Raw Print Server 1.0
Raw Print Server is a raw print server. more>>
Raw Print Server project is a "raw" print server that makes it possible for a computer to act as a "Socket API" or "AppSocket" print server.
This software would not exist without Sam Rushings excellent asyncore module, nor would it exist without Steve Holdens excellent explanation of that module (in his book "Python Web Programming" from New Riders, a truly outstanding book that I cant recommend enough) from which I learned enough to write this server. Im also indebted to Guido van Rossum for Python itself, which has made my life SO much easier, and to Mark Hammond for the win32all modules which are essential parts of the Windows version of the print server.
This is version 0.1 of the Raw Print Server. There are no installation instructions to speak of; I plan to write an install script to assist with getting the software up and running, but for now its all manual.
You will need a working Python 2.x system to run the print server itself, and if you are installing on Windows youll need a working set of the win32all modules from Mark Hammond (which you really ought to have anyway). To run the GUI properties program, youll need a working PyGTK module set, and on Windows that means finding a compatible GTK+ runtime also.
Finding all of the above is left as an exercise for the reader.
Okay. If you are on a recent Linux system, or any of the BSD family, you should be able to install all of the above from your original installation media, or download them from the appropriate website for your distribution.
If you are running Windows, start by getting a recent Python build from www.python.org; follow the links from that site to the win32all downloads (currently somewhere on Sourceforge).
After that, go to www.pygtk.org and follow their links to the downloads you need for Windows. Note that as of this time (October 2005), the GTK libraries normally used for the Gimp dont work with PyGTK (despite notes on the PyGTK for Windows site saying that they do), at least, not on Win9x.
Get the runtime or development libraries referenced from the PyGTK for Windows site. If you already have the Gimp installed, uninstall the GTK+ libraries you got with it before installing the alternate runtime. My Gimp still works, so it must be okay, right?
Enhancements:
- close printer when done
<<lessThis software would not exist without Sam Rushings excellent asyncore module, nor would it exist without Steve Holdens excellent explanation of that module (in his book "Python Web Programming" from New Riders, a truly outstanding book that I cant recommend enough) from which I learned enough to write this server. Im also indebted to Guido van Rossum for Python itself, which has made my life SO much easier, and to Mark Hammond for the win32all modules which are essential parts of the Windows version of the print server.
This is version 0.1 of the Raw Print Server. There are no installation instructions to speak of; I plan to write an install script to assist with getting the software up and running, but for now its all manual.
You will need a working Python 2.x system to run the print server itself, and if you are installing on Windows youll need a working set of the win32all modules from Mark Hammond (which you really ought to have anyway). To run the GUI properties program, youll need a working PyGTK module set, and on Windows that means finding a compatible GTK+ runtime also.
Finding all of the above is left as an exercise for the reader.
Okay. If you are on a recent Linux system, or any of the BSD family, you should be able to install all of the above from your original installation media, or download them from the appropriate website for your distribution.
If you are running Windows, start by getting a recent Python build from www.python.org; follow the links from that site to the win32all downloads (currently somewhere on Sourceforge).
After that, go to www.pygtk.org and follow their links to the downloads you need for Windows. Note that as of this time (October 2005), the GTK libraries normally used for the Gimp dont work with PyGTK (despite notes on the PyGTK for Windows site saying that they do), at least, not on Win9x.
Get the runtime or development libraries referenced from the PyGTK for Windows site. If you already have the Gimp installed, uninstall the GTK+ libraries you got with it before installing the alternate runtime. My Gimp still works, so it must be okay, right?
Enhancements:
- close printer when done
Download (0.028MB)
Added: 2006-07-08 License: BSD License Price:
1216 downloads
bufsock.py 1.1
bufsock.py is a python module that makes it a little bit easier to work with sockets. more>>
bufsock.py is a python module that makes it a little bit easier to work with sockets, and may also make your I/O faster if youre reading and/or writing lots of tiny packets.
Also, you may find that it makes your network applications more reliable, as the network is allowed to split apart your packets into multiple smaller packets, or aggregate two or more packets into one larger packet, if it decides it needs to do so for reliability or performance.
So you might do a s.recv expecting to get one line of input, but the network decided to batch together two remote s.sends into one s.recv, for example. But the network usually, but not always, will batch up your packets the way youd expect - so this can be a difficult problem to track down.
It supports the following methods:
read(length) brings in a specific number of bytes.
readto(char) reads up thru the next occurence of char
readtomax(char,length) reads up thru the next occurence of char, or length bytes, whichever is less
set_chunk_len(length) says "do reads and writes in increments of length". The chunk length defaults to 4096. You should make this larger on networks that employ jumbo frames to squeeze out more performance!
send(buf) writes the bytes in buf.
flush() is just like stdios (the C librarys) flush function. Call it when you want an output buffer flushed (written immediately).
shutdown(v) just like for a regular socket, except it flushes first.
Usage:
Code snippet:
sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
sock.connect((hostname,port))
bs = bufsock.bufsock(sock)
version = bs.readto(n)
print version
<<lessAlso, you may find that it makes your network applications more reliable, as the network is allowed to split apart your packets into multiple smaller packets, or aggregate two or more packets into one larger packet, if it decides it needs to do so for reliability or performance.
So you might do a s.recv expecting to get one line of input, but the network decided to batch together two remote s.sends into one s.recv, for example. But the network usually, but not always, will batch up your packets the way youd expect - so this can be a difficult problem to track down.
It supports the following methods:
read(length) brings in a specific number of bytes.
readto(char) reads up thru the next occurence of char
readtomax(char,length) reads up thru the next occurence of char, or length bytes, whichever is less
set_chunk_len(length) says "do reads and writes in increments of length". The chunk length defaults to 4096. You should make this larger on networks that employ jumbo frames to squeeze out more performance!
send(buf) writes the bytes in buf.
flush() is just like stdios (the C librarys) flush function. Call it when you want an output buffer flushed (written immediately).
shutdown(v) just like for a regular socket, except it flushes first.
Usage:
Code snippet:
sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
sock.connect((hostname,port))
bs = bufsock.bufsock(sock)
version = bs.readto(n)
print version
Download (0.002MB)
Added: 2006-05-02 License: GPL (GNU General Public License) Price:
1270 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 raw socket 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