Main > Free Download Search >

Free use as an example software for linux

use as an example

Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 3264
GNUstep examples 1.1.0

GNUstep examples 1.1.0


GNUstep examples is a collection of programs that are meant to show programmers how to use GNUstep. more>>
GNUstep examples is a collection of programs that are meant to show programmers how to use GNUstep.
GNUstep examples includes a calculator, a currency converter, finger, fractal, puzzle, hostaddress, and ink (a simple editor).
Enhancements:
- Minor feature enhancements
<<less
Download (0.23MB)
Added: 2006-09-13 License: GPL (GNU General Public License) Price:
1140 downloads
Learn HTML By Example 1.03

Learn HTML By Example 1.03


Learn HTML By Example is a sweet little JavaScript / HTML program. more>>
Learn HTML By Example is a sweet little JavaScript / HTML program that allows you to see the HTML you input into on side displayed as a web page on the other.
To install the program, just download it from Web Design Factory, and upload it to your web site.
Main features:
- Easy installation. Just upload to your web site and youre done!
- Immediate feedback on testing HTML and CSS code
- Several examples of commonly used HTML and CSS elements
- No page refreshing required
- Easy to expand by adding new examples
<<less
Download (0.008MB)
Added: 2005-12-19 License: Freeware Price:
1406 downloads
DTLS Client/Server Example 0.2

DTLS Client/Server Example 0.2


DTLS Client/Server Example contains a simple DTLS client and DTLS server. more>>
DTLS Client/Server Example contains a simple DTLS client and DTLS server to show how to send UDP data over an encrypted channel using OpenSSL DTLSv1 support.

LIST OF FILES:

Directory: common - Contains callback functions and error reporting functions common to client and server

sslmgr.h
sslmgr.c

Directory: dtls_server

dtls_server.c - DTLS server part

Directory: dtls_client

dtls_client.c - DTLS client part

<<less
Download (0.010MB)
Added: 2006-11-03 License: Free For Educational Use Price:
1092 downloads
DBIx::Simple::Examples 1.30

DBIx::Simple::Examples 1.30


DBIx::Simple provides a simplified interface to DBI, Perls powerful database module. more>>
[COPRIGHT=1]

EXAMPLES

General

#!/usr/bin/perl -w
use strict;
use DBIx::Simple;

# Instant database with DBD::SQLite
my $db = DBIx::Simple->connect(dbi:SQLite:dbname=file.dat)
or die DBIx::Simple->error;

# Connecting to a MySQL database
my $db = DBIx::Simple->connect(
DBI:mysql:database=test, # DBI source specification
test, test, # Username and password
{ RaiseError => 1 } # Additional options
);

# Using an existing database handle
my $db = DBIx::Simple->connect($dbh);

# Abstracted example: $db->query($query, @variables)->what_you_want;

$db->commit or die $db->error;

Simple Queries

$db->query(DELETE FROM foo WHERE id = ?, $id) or die $db->error;

for (1..100) {
$db->query(
INSERT INTO randomvalues VALUES (?, ?),
int rand(10),
int rand(10)
) or die $db->error;
}

$db->query(
INSERT INTO sometable VALUES (??),
$first, $second, $third, $fourth, $fifth, $sixth
);
# (??) is expanded to (?, ?, ?, ?, ?, ?) automatically

Single row queries

my ($two) = $db->query(SELECT 1 + 1)->list;
my ($three, $four) = $db->query(SELECT 3, 2 + 2)->list;

my ($name, $email) = $db->query(
SELECT name, email FROM people WHERE email = ? LIMIT 1,
$mail
)->list;

Or, more efficiently:

$db->query(SELECT 1 + 1)->into(my $two);
$db->query(SELECT 3, 2 + 2)->into(my ($three, $four));

$db->query(
SELECT name, email FROM people WHERE email = ? LIMIT 1,
$mail
)->into(my ($name, $email));

<<less
Download (0.015MB)
Added: 2007-05-10 License: Public Domain Price:
897 downloads
Java::Import::Examples 0.03

Java::Import::Examples 0.03


Java::Import::Examples is an example of how to use Java::Import to call into Java classes. more>>
Java::Import::Examples is an example of how to use Java::Import to call into Java classes.

Making RMI calls from Perl

One nice thing about Java is the extremely straight forward manner in which it allows you to make calls to remote objects residing on distant servers. Many people use this ability as a point of integration between their system and a posible third party or legacy system. Unfortunatly, for the most part the ability to make calls to these remote objects is something that only other Java applications can do without making a big fuss about it. However, we can now do this from Perl.

Assume that I have a RMI server from which I can get data from in the form of simple Java Beans. One method of doing this is to use the GCJ::Cni library and natively compile and wrap a set of Java Classes which can then be used from my Perl script. However, there is an easier way.

Lets begin by descriping the Java interfaces that well be working with. We first have the Remote Interface that we will be interacting with:

import java.rmi.*;
public interface RemoteInterface extends Remote {
public SomeBean getMessage(String seedMessage) throws RemoteException;
}
And we also have the bean we will be asking for:
import java.io.*;
public class SomeBean implements Serializable {
private String value;
public SomeBean() {}
public void setValue ( String _value ) { ... }
public String getValue ( ) { ... }
}
As far as any Perl client program is concerned this is all we need to know about.
Now all there is left to do is write a client:
use Java::Import qw(
java.rmi.Naming
);

my $remote_interface = java::rmi::Naming->lookup(jstring("//localhost/Home"));
my $bean = $remote_interface->getMessage(jstring("Hi there"));
print $bean->getValue(), "n";

Thats all there is. Notice that all we had to tell Java::Import about was java.rmi.Naming, this is because it was the only class we used by name in our Perl code, every other Java class (the objects held by $bean and $remote_interface) was returned by some other method call originating from java.rmi.Naming.

In order to run this example we have to make sure everything is in its place. We start by compiling the client code. Assuming that we have been given a Stub class file (RemoteObject_Stub.class) we can do the following:

gcj -C SomeBean.java RemoteInterface.java
fastjar -cvf client.jar SomeBean.class RemoteInterface.class RemoteObject_Stub.class

Making sure our server is reachable we can then run the client code:

CLASSPATH=client.jar perl client.pl

Thats it, you should then see the message returned by your server.

<<less
Download (0.028MB)
Added: 2007-06-01 License: Perl Artistic License Price:
876 downloads
Quality Assurance Agent 0.1

Quality Assurance Agent 0.1


QAA is a XUL Mozilla Firefox extension that performs a user supplied test list on a Web application. more>>
QAA is a XUL Mozilla Firefox extension that performs a user supplied test list on a Web application. Test sessions can be defined by example.
A report is generated when sessions are replayed.
Enhancements:
- This release can load and save .qaa files (Quality Assurance Agent file format), record a journey in the tested site using definition by example, and perform a test bench with a log style report.
<<less
Download (0.030MB)
Added: 2005-06-28 License: GPL (GNU General Public License) Price:
1580 downloads
GCJ::Cni::Examples 0.03

GCJ::Cni::Examples 0.03


GCJ::Cni::Examples is a Perl module with examples of how to use GCJs CNI interface to write Perl Modules in Java. more>>
GCJ::Cni::Examples is a Perl module with examples of how to use GCJs CNI interface to write Perl Modules in Java.

EXAMPLES

Writing Treaded modules in Java

One benefit of using GCJ is that it takes advantage of POSIX threading. This is nice since Perls threading model is, shall we say, less than ideal. Now, you could theoretically write a module in C or C++ and and use the standard POSIX library to do your threaded work for you, however, why not take advantage of the nice Threading interface that Java provides to you by default. This may also come in handy if you have a massively threaded Java library that youd like to call from Perl.

For this example assume that I want to do matrix multiplication, albeit in a very crazy manner. Therefore, I will write a Java class, Matrix, and a method, multiply, which will take another matrix to perform the operation between. Heres the crazy part, for each cell in the resulting matrix I will spawn a new thread, as an internal class, and give it a row and a column from which they will derive the result. I know this is a little wierd but the point is that Ill be spawning a lot of new threads. To multiply two 10x10 matrices we will have to spawn 100 threads (one thread per cell in the resulting 10x10 matrix). Imagine doing this in Perl, then imagine doing it in Java; natively compiled Java. Much faster and a lot less headaches.

The Java Interface/pseudocode is as follows:

public class Matrix {
public Matrix ( int numRows, int numCols ) {
...Constructor stuff...
}

public void set ( int row, int col, int val ) {
...set an element...
}

public int get ( int row, int col ) {
...get an element...
}

public Matrix multiply ( Matrix times ) {
...set it up...
for ( int i = 0; i < rows; i++ ) {
for ( int j = 0; j < times.getCols(); j++ ) {
//GO NUTS!!!!
ArrayMultiplier multiplier = new ArrayMultiplier(this, times, result, i, j);
multiplier.start();
...etc...
}
}
...wait for the threads to exit and return the new matrix...
}

public int getRows ( ) {
...get number of rows...
}

public int getCols ( ) {
...get number of columns...
}

public void print ( ) {
...print the matrix to stdout...
}

private class ArrayMultiplier extends Thread {
public ArrayMultiplier ( Matrix a, Matrix b, Matrix result, int row, int col ) {
...Construct this bad boy...
}

public void run ( ) {
int sum = 0;
for ( int i = 0; i < a.getCols(); i++ ) {
sum += (a.get(row, i) * b.get(i, col));
}
result.set(row, col, sum);
}

}
}
Now, we want to call this class from Perl. My perferred manner is through SWIG so thats what were going to use. However, you do not need to use SWIG, you can use whatever method you prefer when wrapping C++ classes. We begin by creating a C++ header file from our above class. This is done by using GCJs gcjh utility. First we need to class compile Matrix.java

gcj -C Matrix.java

Then we go ahead and create the header file:

gcjh Matrix

Easy enough. We can then extract the interface we want to have available in Perl from the generated header file and from it create a i file to be used as input to SWIG. I usually start by copying my header file to the same named file but with an i extension instead. I then remove all of the grimy C++ gruff, private methods and variables, slap a module directive on it and call it done. It wont always be this easy though. When youre done an interface file for the above class should look something like this:

%module Matrix;

typedef int jint;

class Matrix
{
public:
Matrix (jint, jint);
virtual void set (jint, jint, jint);
virtual jint get (jint, jint);
virtual ::Matrix *multiply (::Matrix *);
virtual jint getRows ();
virtual jint getCols ();
virtual void print ();
};
We then put SWIG to work and generate our C++ wrapper for Perl:

swig -perl -c++ Matrix.i

After the above command we now will see two new files in our current directory, Matrix.pm and Matrix_wrap.cxx; these correspond the module directive we gave in Matrix.i.

At this point all we have left to do is compile, and use.

gcj -c Matrix.java
gcc -c -I -include Matrix.h Matrix_wrap.cxx
gcc -shared -lgcj -lstdc++ Matrix.o Matrix_wrap.o -oMatrix.so

A simple Perl file using this module might look something like:

sub populate_matrix {
my $matrix = shift;
for ( my $i = 0; $i < $matrix->getRows(); $i++ ) {
for ( my $j = 0; $j < $matrix->getCols(); $j++ ) {
$matrix->set($i, $j, $i * $j);
}
}
}

use GCJ::Cni;
use Matrix;

GCJ::Cni::JvCreateJavaVM(undef);
GCJ::Cni::JvAttachCurrentThread(undef, undef);

my $matrix = new Matrix::Matrix(10, 10);
populate_matrix($matrix);
my $matrix2 = new Matrix::Matrix(10, 10);
populate_matrix($matrix2);
$matrix3 = $matrix->multiply($matrix2);
$matrix3->print();

GCJ::Cni::JvDetachCurrentThread();

Ill leave it up to the reader to write a Perl module that does the same thing, that is, spawns 100 threads. In my own personal fiddling I found that just spawning that many threads (never mind doing any kind of work) was over 3 time slower in Perl. In this situation we at least get to use our favorite language, Perl, and offload some of the heavy hitting to a language more suited for it.

Where this really comes in handy is when you have an existing multi-threaded Java library that you would like to expose to Perl. You could theoretically natively compile various components of your library and then generate Perl bindings to access it. In this way, you get a little extra speed and efficiency as well as code reuse and binding.

<<less
Download (0.020MB)
Added: 2007-06-04 License: Perl Artistic License Price:
877 downloads
Example NAT usage 1/17/01

Example NAT usage 1/17/01


Example NAT usage is a little script to show a NAT usage example. more>>
Example NAT usage is a little script to show a NAT usage example.

Sample:

#----------------------#
# Variable Definitions #
#----------------------#

EXT=eth0
INT=eth1

# "Masquerading" Example
PRIV_NETS="128.111.1.1 128.111.185.0/255.255.255.0"
MASQ_NET=192.168.1.0/255.255.255.0

# "General SNAT" Example
MAP_FROM=192.168.1.0/255.255.255.0
MAP_TO=128.111.185.30-128.111.185.42

# "Redirection" Example
INTERNAL_IP=10.10.1.1

# "Port Forwarding" Example
EXTERNAL_IP=128.111.1.200
NEWS_SERVER=10.10.1.38
MAIL_SERVER=10.10.1.69

# "Load Balancing" Example
VIRTUAL_SERVER=news.sblug.com
SERVER_RANGE=10.10.1.9-10.10.1.15

#-------------#
# NAT Section #
#-------------#

#
# Flush previous rules
#

iptables -t nat -F


#
# Masquerading
#

# Masquerading for outgoing connections, except privileged nets are exempt
for NET in $PRIV_NETS ; do
iptables -t nat -A POSTROUTING -d $NET -o $EXT -j ACCEPT
done
iptables -t nat -A POSTROUTING -s $MASQ_NET -o $EXT -j MASQUERADE


#
# General SNAT
#

# Internal computers w/ private ips "borrow" public ips of other internal computers to ssh out
iptables -t nat -A POSTROUTING -s $MAP_FROM -o $EXT -p tcp --dport ssh -j SNAT --to-source $MAP_TO
iptables -t nat -A POSTROUTING -s $MAP_FROM -o $EXT -p udp --dport ssh -j SNAT --to-source $MAP_TO


#
# Redirection
#

# Redirect internal net http traffic through squid proxy, but allow direct access to local web server
iptables -t nat -A PREROUTING -i $INT -d ! $INTERNAL_IP -p tcp --dport www -j REDIRECT --to-port 8080


#
# Port Forwarding
#

# Forward gateway port 7000 to news server and gateway port 8000 to pop mail server
iptables -t nat -A PREROUTING -d $EXTERNAL_IP -p tcp --dport 7000 -j DNAT --to-dest $NEWS_SERVER:nntp
iptables -t nat -A PREROUTING -d $EXTERNAL_IP -p tcp --dport 8000 -j DNAT --to-dest $MAIL_SERVER:pop3

#
# Load Balancing
#

# Basic load balancing by redirecting nntp requests to any of several local news servers
iptables -t nat -A PREROUTING -d $VIRTUAL_SERVER -p tcp --dport nntp -j DNAT --to-dest $SERVER_RANGE
<<less
Download (MB)
Added: 2007-02-14 License: GPL (GNU General Public License) Price:
984 downloads
Catalyst::Example::InstantCRUD 0.0.18

Catalyst::Example::InstantCRUD 0.0.18


Catalyst::Example::InstantCRUD is a CRUD scaffolding for Catalyst. more>>
Catalyst::Example::InstantCRUD is a CRUD scaffolding for Catalyst.

SYNOPSIS
instantcrud.pl -name=My::App -dsn=dbi:Pg:dbname=CE -user=zby -password=pass
The instantcrud.pl executable creates a skeleton CRUD application in current directory. The parameters are: name of the application and database connection details.

The script will create CRUD interface (CReate, Update, Delete) with paging and sort for all tables defined in the accessed database. The Create and Update forms let you manipulate also on relations (even many to many). It includes some basic authentication code.

I am waiting for suggestions what else basic functionality would be nice to have in the generated application.

When the code is generated you can run the application:

$ My-App/script/my_app_server.pl
You can connect to your server at http://zby.aster.net.pl:3000

To access the CRUD interface to the tables you need to add /tablename (in lowercase) to the address: http://localhost:3000/tablename (Note that if the table name has a underscore, that underscore should be deleted in the address so table foo_bar is available at http://localhost:3000/foobar, this is due to some conversions made by the underlying libraries).

The generated application will use DBIx::Class for model classes and Template::Toolkit for View.

CUSTOMISATION AND EXTENDING

The first place for customisations are the Template Toolkit templates and the CSS file. The CSS file used by the application is root/static/pagingandsort.css. The templates are generated in directories named after the controllers in the root directory.

To customize the forms used for creation and modification of records you can modify the interface_config.dat file generated in the application main directory. For now its content is a dump of a perl structure. I hope it is enough self explanatory for some simple modifications. The most basic one should be deleting some field, by deleting its hash from the list, and changing the order of fields.

The generated controller is a subclass of Catalyst::Example::Controller::InstantCRUD. You can use the standard OO technique of overriding the documented methods to customize and extend it.

<<less
Download (0.032MB)
Added: 2007-01-18 License: Perl Artistic License Price:
1009 downloads
E/AS Automation Solutions 0.2.0

E/AS Automation Solutions 0.2.0


E/AS Automation Solutions is open source software system for help automate your solutions even for personal or corporate ones. more>>
E/AS Automation Solutions is open source software system for help automate your solutions even for personal and/or corporate ones.
E/AS written on CLIP language (CA-Clipper dialect, compiler can be obtained from ITK.ru) and uses CODB (CLIP Object Database) as data storage.
Main features:
- client-server technology (both data and interface forms)
- component infrastructure with interaction between components by messages
- interface forms on XML
- MDI
E/AS contains in typical distribution:
- client software written on clip-ui library
- server software with wrapper for run as daemon
- maintenance tools: CODB console and component manager
- base (form, auth) and example (contact) components
Enhancements:
- completely rewrite code for implement E/AS architecture
- component infrastructure
- own server program instead COBRA
- maintenance tools: CODB console and component manager
- base and example components
- autoupdate views
<<less
Download (0.060MB)
Added: 2005-11-15 License: GPL (GNU General Public License) Price:
1440 downloads
GNUsTicker 0.1 alpha

GNUsTicker 0.1 alpha


GNUsTicker is a GNOME panel applet RSS aggregator. more>>
GNUsTicker is a GNOME panel applet RSS aggregator like KNewsTicker for KDE.

It may be extended for feeding from differente sources (an example for POP3 mail server is provided).
<<less
Download (0.79MB)
Added: 2005-07-29 License: GPL (GNU General Public License) Price:
1547 downloads
Example netfilter setup 0.1

Example netfilter setup 0.1


Example netfilter setup contains a simple example on how to setup netfilter. more>>
Example netfilter setup contains a simple example on how to setup netfilter.

Warning this is experimental, I dont garantee this is 100% secure, it just does the work fine for me and i thought it could be a good jumpstart for people new to netfilter.

Now I am waiting for your corrections, suggestions and critics. Also I am gonna write a small addon for setting up dynamic rules cause i am tired of all these programs with dynamics port like bind, xdm and rpc.

Btw nmap -sU will still report udp dropping port as open.

nmap -sU -p 111 192.168.1.1
<<less
Download (MB)
Added: 2007-02-14 License: GPL (GNU General Public License) Price:
986 downloads
Alan 1.0

Alan 1.0


Alan project is a Turing machine implementation. more>>
Alan project is a Turing machine implementation.

Alan is an implementation of a Turing machine for educational purposes.

It was created as a programing project at the University of Aplied Sciences Rosenheim.

Features include an easy-to-use GUI and a reusable Turing Machine component. Additionally, Alan contains many example programs for the Turing machine.

<<less
Download (0.37MB)
Added: 2006-10-25 License: GPL (GNU General Public License) Price:
1095 downloads
jsaes 0.1

jsaes 0.1


jsaes is a compact javascript implementation of the AES block cipher. more>>
jsaes is a compact javascript implementation of the AES block cipher. Key lengths of 128, 192 and 256 bits are supported.

Example:

The following code example enciphers the plaintext block 00 11 22 .. EE FF with the 256 bit key 00 01 02 .. 1E 1F.

AES_Init();

var block = new Array(16);
for(var i = 0; i < 16; i++)
block[i] = 0x11 * i;

var key = new Array(32);
for(var i = 0; i < 32; i++)
key[i] = i;

AES_ExpandKey(key);
AES_Encrypt(block, key);

AES_Done();
<<less
Download (0.003MB)
Added: 2006-10-05 License: GPL (GNU General Public License) Price:
1114 downloads
Sendmail::AccessDB 0.09

Sendmail::AccessDB 0.09


Sendmail::AccessDB is an interface to the Sendmail access.db list. more>>
Sendmail::AccessDB is an interface to the Sendmail access.db list.

SYNOPSIS

use Sendmail::AccessDB qw(spam_friend whitelisted);
$friend_or_hater = spam_friend(user@example.com);
$whitelisted = whitelisted(sender@example.com);

This module is designed so that users of the Sendmail::Milter module (or other Sendmail programmers) can ascertain if a user has elected to whitelist themselves as a "spam friend" (where there should be no spam filtering on mail to them) or, where spam-filtering is not the default, but an option, where certain receipients have been labeled as "spam haters"

USAGE

use Sendmail::AccessDB qw(spam_friend);
$friend_or_hater = spam_friend(user@example.com);

Ordinarily, this will look for such things as "Spam:user@example.com", "Spam:user@", etc., in the /etc/mail/access.db file. There is an optional second argument "Category", which could be used if you wanted to enable specific checks, for example, if you wanted to customize down to a per-check basis, you might use:

$rbl_friend_or_hater = spam_friend(user@example.com,
qualifier => maps_rbl);
$dul_friend_or_hater = spam_friend(user@example.com,
qualifier => maps_dul);

Caution should be taken when defining your own categories, as they may inadvertantly conflict with Sendmail-defined categories.

use Sendmail::AccessDB qw(whitelisted);
$whitelisted = whitelisted(sender@example.com);
$whitelisted_host = whitelisted(foo.example.com);
$whitelisted_addr = whitelisted(192.168.1.123);

Would check for appropriate whitelisting entries in access.db. Some lookups might be ambiguous, for example:

$whitelisted = whitelisted(foobar);

where it is hard to know if that is supposed to be a hostname, or a sender. whitelisted() accepts the type argument, such as:

$whitelisted = whitelisted(foobar,type=>hostname);
$whitelisted = whitelisted(postmaster,type=>mail);

Its also possible to feed the qualifier argument, if necessary, for example, to do:

$whitelisted = whitelisted(host.example.com,type=>hostname,
qualifier => Connect);

which would check to see if this host has an OK flag set for the Connect qualifier.

There is also the generic "lookup", which, at its simplest, takes a single argument:

$rc = lookup(host.example.com);

will do a lookup on host.example.com. But if you wanted to pay attention to parent-domains, you might do:

$rc = lookup(host.example.com, type=>hostname);

but if you wanted to find out if host.example.com, or any of its parent domains (example.com and com), had a value in the "MyQual" qualifier, you might do:
$rc = lookup(host.example.com,type=>hostname,qualifier=>MyQual);
which would look up, in order MyQual:host.example.com, MyQual:example.com, and MyQual:com, returning the first (most specific) one found.

<<less
Download (0.015MB)
Added: 2007-04-19 License: Perl Artistic License Price:
918 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 5
  • 1
  • 2
  • 3
  • 4
  • 5