obfuscation contest
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 26
Obfuscated Tiny C Compiler
Obfuscated Tiny C Compiler (OTCC) is a very small C compiler. more>>
Obfuscated Tiny C Compiler (OTCC) is a very small C compiler I wrote in order to win the International Obfuscated C Code Contest (IOCCC) in 2002.
My goal was to write the smallest C compiler which is able to compile itself. I choose a subset of C which was general enough to write a small C compiler. Then I extended the C subset until I reached the maximum size authorized by the contest: 2048 bytes of C source excluding the ;, {, } and space characters.
I choose to generate i386 code. The original OTCC code could only run on i386 Linux because it relied on endianness and unaligned access. It generated the program in memory and launched it directly. External symbols were resolved with dlsym().
In order to have a portable version of OTCC, I made a variant called OTCCELF. It is only a little larger than OTCC, but it generates directly a dynamically linked i386 ELF executable from a C source without relying on any binutils tools! OTCCELF was tested succesfully on i386 Linux and on Sparc Solaris.
NOTE: My other project TinyCC which is a fully featured ISOC99 C compiler was written by starting from the source code of OTCC !
Compilation:
gcc -O2 otcc.c -o otcc -ldl
gcc -O2 otccelf.c -o otccelf
Self-compilation:
./otccelf otccelf.c otccelf1
<<lessMy goal was to write the smallest C compiler which is able to compile itself. I choose a subset of C which was general enough to write a small C compiler. Then I extended the C subset until I reached the maximum size authorized by the contest: 2048 bytes of C source excluding the ;, {, } and space characters.
I choose to generate i386 code. The original OTCC code could only run on i386 Linux because it relied on endianness and unaligned access. It generated the program in memory and launched it directly. External symbols were resolved with dlsym().
In order to have a portable version of OTCC, I made a variant called OTCCELF. It is only a little larger than OTCC, but it generates directly a dynamically linked i386 ELF executable from a C source without relying on any binutils tools! OTCCELF was tested succesfully on i386 Linux and on Sparc Solaris.
NOTE: My other project TinyCC which is a fully featured ISOC99 C compiler was written by starting from the source code of OTCC !
Compilation:
gcc -O2 otcc.c -o otcc -ldl
gcc -O2 otccelf.c -o otccelf
Self-compilation:
./otccelf otccelf.c otccelf1
Download (0.004MB)
Added: 2006-03-29 License: GPL (GNU General Public License) Price:
1318 downloads
B::Deobfuscate 0.18
B::Deobfuscate Perl module contains the deobfuscate source code. more>>
B::Deobfuscate Perl module contains the deobfuscate source code.
SYNOPSIS
perl -MO=Deobfuscate,-csynthetic.yml,-y synthetic.pl
B::Deobfuscate is a backend module for the Perl compiler that generates perl source code, based on the internal compiled structure that perl itself creates after parsing a program. It adds symbol renaming functions to the B::Deparse module. An obfuscated program is already parsed and interpreted correctly by the B::Deparse program. Unfortunately, if the obfuscation involved variable renaming then the resulting program also has obfuscated symbols.
This module takes the last step and fixes names like $z5223ed336 to be a word from a dictionary. While the name still isnt meaningful it is at least easier to distinguish and read. Here are two examples - one from B::Deparse and one from B::Deobfuscate.
Initial input
if(@z6a703c020a){(my($z5a5fa8125d,$zcc158ad3e0)=File::Temp::tempfile(
UNLINK,1));print($z5a5fa8125d "=over 8nn");(print($z5a5fa8125d
@z6a703c020a)or die(((("Cant print $zcc158ad3e0: $!"))); print($z5a5fa8125d
"=backn");(close(*$z5a5fa8125d)or die(((("Cant close ".*$za5fa8125d.": $!")
));(@z8374cc586e=$zcc158ad3e0);($z9e5935eea4=1);}
After B::Deparse:
if (@z6a703c020a) {
(my($z5a5fa8125d, $zcc158ad3e0) = File::Temp::tempfile(UNLINK, 1));
print($z5a5fa8125d "=over 8nn");
(print($z5a5fa8125d @z6a703c020a)
or die((((q[Cant print ] . $zcc158ad3e0) . : ) . $!)));
print($z5a5fa8125d "=backn");
(close(*$z5a5fa8125d)
or die((((q[Cant close ] . *$za5fa8125d) . : . $!)));
(@z8374cc586e = $zcc158ad3e0);
($z9e5935eea4 = 1);
}
After B::Deobfuscate:
if (@parenthesises) {
(my($scrupulousity, $postprocesser) = File::Temp::tempfile(UNLINK, 1));
print($scrupulousity "=over 8nn");
(print($scrupulousity @parenthesises)
or die((((q[Cant print ] . $postprocesser) . : ) . $!)));
print($scrupulousity "=backn");
(close(*$scrupulousity)
or die((((q[Cant close ] . *$postprocesser) . : ) . $!)));
(@interruptable = $postprocesser);
($propagandaist = 1);
}
Youll note that the only real difference is that instead of variable names like $z9e5935eea4 you get $propagandist.
<<lessSYNOPSIS
perl -MO=Deobfuscate,-csynthetic.yml,-y synthetic.pl
B::Deobfuscate is a backend module for the Perl compiler that generates perl source code, based on the internal compiled structure that perl itself creates after parsing a program. It adds symbol renaming functions to the B::Deparse module. An obfuscated program is already parsed and interpreted correctly by the B::Deparse program. Unfortunately, if the obfuscation involved variable renaming then the resulting program also has obfuscated symbols.
This module takes the last step and fixes names like $z5223ed336 to be a word from a dictionary. While the name still isnt meaningful it is at least easier to distinguish and read. Here are two examples - one from B::Deparse and one from B::Deobfuscate.
Initial input
if(@z6a703c020a){(my($z5a5fa8125d,$zcc158ad3e0)=File::Temp::tempfile(
UNLINK,1));print($z5a5fa8125d "=over 8nn");(print($z5a5fa8125d
@z6a703c020a)or die(((("Cant print $zcc158ad3e0: $!"))); print($z5a5fa8125d
"=backn");(close(*$z5a5fa8125d)or die(((("Cant close ".*$za5fa8125d.": $!")
));(@z8374cc586e=$zcc158ad3e0);($z9e5935eea4=1);}
After B::Deparse:
if (@z6a703c020a) {
(my($z5a5fa8125d, $zcc158ad3e0) = File::Temp::tempfile(UNLINK, 1));
print($z5a5fa8125d "=over 8nn");
(print($z5a5fa8125d @z6a703c020a)
or die((((q[Cant print ] . $zcc158ad3e0) . : ) . $!)));
print($z5a5fa8125d "=backn");
(close(*$z5a5fa8125d)
or die((((q[Cant close ] . *$za5fa8125d) . : . $!)));
(@z8374cc586e = $zcc158ad3e0);
($z9e5935eea4 = 1);
}
After B::Deobfuscate:
if (@parenthesises) {
(my($scrupulousity, $postprocesser) = File::Temp::tempfile(UNLINK, 1));
print($scrupulousity "=over 8nn");
(print($scrupulousity @parenthesises)
or die((((q[Cant print ] . $postprocesser) . : ) . $!)));
print($scrupulousity "=backn");
(close(*$scrupulousity)
or die((((q[Cant close ] . *$postprocesser) . : ) . $!)));
(@interruptable = $postprocesser);
($propagandaist = 1);
}
Youll note that the only real difference is that instead of variable names like $z9e5935eea4 you get $propagandist.
Download (0.017MB)
Added: 2007-06-26 License: Perl Artistic License Price:
854 downloads
Local Area Security 0.5
L.A.S. is a research group focused on information security related subjects. more>>
Local Area Security is a research group focused on information security related subjects. We are most known for L.A.S. Linux. Our live-CD security toolkit.
Local Area Security is a project that was started in 2002 to research information security related topics. During that time there was no real live-CD toolkit focused on information security.
So Jascha, the project founder built one from a stripped down version of Knoppix called Model-K. Both of which were built from Debian Linux.
Up until version 0.4 L.A.S. Linux was command line only. Which made it limited to some of the tools it could contain since many require a GUI. Or at least for many it is preferable to have one. So FluxBox was added as the desktop since it is light weight and very feature filled.
It was during this time that Jascha came up with the idea of keeping the size of L.A.S. as small as possible, which lead to a target maximum size of 180MBs. The size of the original mini-CDs that were available at the time. This forced the selection of tools and features to be weighed heavily since unlike other live-CDs that throw in everything including the kitchen sink. L.A.S. was designed from the ground up to be a tool not a all-inclusive grab bag of applications.
As well as many advances for live-CDs came about, such as to-ram that allows booting a live-CD into the physical RAM of a computer. Which by chance L.A.S. was perfectly cut out for. With as little as 256MB of RAM people could boot L.A.S. and then free up their CD-ROMs for burring etc.
For forensics this was a big plus, along with many other uses. Plus L.A.S. ran very fast in RAM which helped with running Nessus, Nmap, or other tools. When compared to full size (700MB) CDs which would require 1GB of RAM to use the to-ram option, it was really no contest.
<<lessLocal Area Security is a project that was started in 2002 to research information security related topics. During that time there was no real live-CD toolkit focused on information security.
So Jascha, the project founder built one from a stripped down version of Knoppix called Model-K. Both of which were built from Debian Linux.
Up until version 0.4 L.A.S. Linux was command line only. Which made it limited to some of the tools it could contain since many require a GUI. Or at least for many it is preferable to have one. So FluxBox was added as the desktop since it is light weight and very feature filled.
It was during this time that Jascha came up with the idea of keeping the size of L.A.S. as small as possible, which lead to a target maximum size of 180MBs. The size of the original mini-CDs that were available at the time. This forced the selection of tools and features to be weighed heavily since unlike other live-CDs that throw in everything including the kitchen sink. L.A.S. was designed from the ground up to be a tool not a all-inclusive grab bag of applications.
As well as many advances for live-CDs came about, such as to-ram that allows booting a live-CD into the physical RAM of a computer. Which by chance L.A.S. was perfectly cut out for. With as little as 256MB of RAM people could boot L.A.S. and then free up their CD-ROMs for burring etc.
For forensics this was a big plus, along with many other uses. Plus L.A.S. ran very fast in RAM which helped with running Nessus, Nmap, or other tools. When compared to full size (700MB) CDs which would require 1GB of RAM to use the to-ram option, it was really no contest.
Download (210MB)
Added: 2005-11-09 License: GPL (GNU General Public License) Price:
840 downloads
Convulsion 0.0.5
Convulsion is a drop-in CVS repository browser for PHP. more>>
Convulsion is a drop-in CVS repository browser for PHP. It makes use of the libraries developed for the Chora module of the Horde project, but does not require that Horde be installed and working to be used.
You can browse directories and files, view a files revision history, compare two versions, and retrieve its ChangeLog. Convulsion also supports automatic obfuscation of e-mail addresses and syntax highlighting of most common languages.
Convulsions output is standards-compliant, accessible, and customisable by means of CSS.
Using Convulsion with Apache 2.x
Please note that in order to use Convulsion with the 2.x series of the Apache web server, you will need to set the value of the "AcceptPathInfo" directive to a value other than "Off". This can be done in the main Apache config, in the < VirtualHost > section for your site or using a .htaccess file.
<<lessYou can browse directories and files, view a files revision history, compare two versions, and retrieve its ChangeLog. Convulsion also supports automatic obfuscation of e-mail addresses and syntax highlighting of most common languages.
Convulsions output is standards-compliant, accessible, and customisable by means of CSS.
Using Convulsion with Apache 2.x
Please note that in order to use Convulsion with the 2.x series of the Apache web server, you will need to set the value of the "AcceptPathInfo" directive to a value other than "Off". This can be done in the main Apache config, in the < VirtualHost > section for your site or using a .htaccess file.
Download (0.018MB)
Added: 2005-09-28 License: GPL (GNU General Public License) Price:
1487 downloads
Physics::Lorentz::Transformation 0.01
Physics::Lorentz::Transformation Perl module contains representation of poincare transformations. more>>
Physics::Lorentz::Transformation Perl module contains representation of poincare transformations.
SYNOPSIS
use Physics::Lorentz;
my $rotation = Physics::Lorentz::Transformation->rotation_euler(
$alpha, $beta, $gamma
);
my $vector = Physics::Lorentz::Vector->new([$t, $x, $y, $z]);
my $rotated = $rotation->apply($vector);
# or: $rotated = $rotation * $vector;
...
This class represents a Poincare transformation. That is a proper or improper Lorentz transformation plus a shift by some 4-vector. (x = lamda*x + a)
Yes, the class name might be misleading, but honestly, when most non-physicists talk about Lorentz transformations, they mean Poincare transformations anyway. (Pun intended.)
To sum this up, the set of Poincare transformations contains, among others
Boosts
Rotations
Space Inversions / Parity
Time Inversion
Shifts by a constant vector
Combinations thereof
OVERLOADED INTERFACE
Stringification is overloaded with the stringify method.
Multiplication (*) is overloaded with the merge method for other transformations: $t3 = $t1 * $t2 corresponds to the following application on a vector: t1 * ( t2 * vec ). (I.e. t2 first, then t1) Of course, Poincare transformations do not commute!
The assignment form of multiplication is supported for merging transformations but its use is discouraged unless youre into obfuscation.
Multiplication is also overloaded for application to vectors, but only if the vector is on the right of the transformation: $t * $v is okay, but $v * $t is not.
<<lessSYNOPSIS
use Physics::Lorentz;
my $rotation = Physics::Lorentz::Transformation->rotation_euler(
$alpha, $beta, $gamma
);
my $vector = Physics::Lorentz::Vector->new([$t, $x, $y, $z]);
my $rotated = $rotation->apply($vector);
# or: $rotated = $rotation * $vector;
...
This class represents a Poincare transformation. That is a proper or improper Lorentz transformation plus a shift by some 4-vector. (x = lamda*x + a)
Yes, the class name might be misleading, but honestly, when most non-physicists talk about Lorentz transformations, they mean Poincare transformations anyway. (Pun intended.)
To sum this up, the set of Poincare transformations contains, among others
Boosts
Rotations
Space Inversions / Parity
Time Inversion
Shifts by a constant vector
Combinations thereof
OVERLOADED INTERFACE
Stringification is overloaded with the stringify method.
Multiplication (*) is overloaded with the merge method for other transformations: $t3 = $t1 * $t2 corresponds to the following application on a vector: t1 * ( t2 * vec ). (I.e. t2 first, then t1) Of course, Poincare transformations do not commute!
The assignment form of multiplication is supported for merging transformations but its use is discouraged unless youre into obfuscation.
Multiplication is also overloaded for application to vectors, but only if the vector is on the right of the transformation: $t * $v is okay, but $v * $t is not.
Download (0.011MB)
Added: 2007-07-30 License: Perl Artistic License Price:
820 downloads
ProGuard 3.9 / 4.0 Beta
ProGuard is a Java class file shrinker and obfuscator. more>>
ProGuard is a free Java class file shrinker, optimizer, and obfuscator. ProGuard project can detect and remove unused classes, fields, methods, and attributes. It can then optimize bytecode and remove unused instructions.
Finally, it can rename the remaining classes, fields, and methods using short meaningless names. The resulting jars are smaller and harder to reverse-engineer.
More compact jar files also means smaller storage requirements, faster transfer of applications across networks, faster loading, and smaller memory footprints.
ProGuards main advantage compared to other Java obfuscators is probably its compact template-based configuration. A few intuitive command line options or a simple configuration file are usually sufficient. For instance, the following configuration option preserves all applets in a jar:
-keep public class * extends java.applet.Applet
The user manual explains all available options and shows more examples of this powerful configuration style.
ProGuard is fast. It only takes seconds to process programs and libraries of several megabytes. The results section presents actual figures for a number of applications.
ProGuard is a command-line tool with an optional graphical user interface. It also comes with plugins for Ant and for the J2ME Wireless Toolkit.
ProGuard is a Java class file shrinker, optimizer, and obfuscator. The shrinking step detects and removes unused classes, fields, methods, and attributes. The optimization step analyzes and optimizes the bytecode of the methods. The obfuscation step renames the remaining classes, fields, and methods using short meaningless names. The resulting jars are smaller and harder to reverse-engineer.
ProGuard can also be used to list unused fields and methods in an application, and to print out the internal structure of class files.
ProGuard typically reads the input jars (or wars, ears, zips, or directories). It then shrinks, optimizes, and obfuscates them. It then writes the results to one or more output jars (or wars, ears, zips, or directories). The input jars can optionally contain resource files. ProGuard copies all non-class resource files from the input jars to the output jars. Their names and contents remain unchanged.
ProGuard requires the library jars (or wars, ears, zips, or directories) of the input jars to be specified. It can then reconstruct class hierarchies and other class dependencies, which are necessary for proper shrinking, optimization, and obfuscation. The library jars themselves always remain unchanged. You should still put them in the class path of your final application.
In order to determine which code has to be preserved and which code can be discarded or obfuscated, you have to specify one or more entry points to your code. These entry points are typically classes with main methods, applets, midlets, etc.
- In the shrinking step, ProGuard starts from these seeds and recursively determines which classes and class members are used. All other classes and class members are discarded.
- In the optimization step, ProGuard further optimizes the code. Among other optimizations, classes and methods that are not entry points can be made final, and some methods may be inlined.
- In the obfuscation step, ProGuard renames classes and class members that are not entry points. In this entire process, keeping the entry points ensures that they can still be accessed by their original names.
Any classes or class members of your code that are created or invoked dynamically (that is, by name) have to be specified as entry points too. It is generally impossible to determine these cases automatically, but ProGuard will offer some suggestions if keeping some classes or class members appears necessary. For proper results, you should at least be somewhat familiar with the code that you are processing.
ProGuard does handle Class.forName("SomeClass") and SomeClass.class constructs automatically. The referenced classes are preserved in the shrinking phase, and the string arguments are properly replaced in the obfuscation phase. With variable string arguments, it is generally impossible to determine their possible values (they might be read from a configuration file, for instance).
However, as mentioned, ProGuard will note constructs like "(SomeClass)Class.forName(variable).newInstance()". These might be an indication that the class or interface SomeClass and/or its implementations may need to be preserved. You can then adapt your configuration accordingly.
Whats New in 3.9 Stable Release:
- This release fixes a number of bugs.
- Notably, ".class" constructs compiled in Java 6 are now handled correctly.
- The optimization step now avoids a possible division by 0 and correctly processes local variables with indices larger than 255.
- The documentation and examples have been updated.
Whats New in 4.0 Beta Development Release:
- Added preverifier for Java 6 and Java Micro Edition, with new option -dontpreverify.
- Added new option -target to modify java version of processed class files.
- Made -keep options more orthogonal and flexible, with option modifiers allowshrinking, allowoptimization, and allowobfuscation.
- Added support for configuration by means of annotations.
- Improved shrinking of unused annotations.
- Added check on modification times of input and output, to avoid unnecessary processing, with new option -forceprocessing.
- Added new options -flattenpackagehierarchy and -repackageclasses (replacing -defaultpackage) to control obfuscation of packages names.
- Added new options -adaptresourcefilenames and -adaptresourcefilecontents, with file filters, to update resource files corresponding to obfuscated class names.
- Now respecting naming rule for nested class names (EnclosingClass$InnerClass) in obfuscation step, if InnerClasses attributes or EnclosingMethod attributes are being kept.
- Added new inter-procedural optimizations: method inlining and propagation of constant fields, constant arguments, and constant return values.
- Added optimized local variable allocation.
- Added over 250 new peephole optimizations.
- Improved making classes and class members public or protected.
- Now printing notes on suspiciously unkept classes in parameters of specified methods.
- Now printing notes for class names that dont seem to be fully qualified.
- Added support for uppercase filename extensions.
- Rewritten class file I/O code.
- Updated documentation and examples.
<<lessFinally, it can rename the remaining classes, fields, and methods using short meaningless names. The resulting jars are smaller and harder to reverse-engineer.
More compact jar files also means smaller storage requirements, faster transfer of applications across networks, faster loading, and smaller memory footprints.
ProGuards main advantage compared to other Java obfuscators is probably its compact template-based configuration. A few intuitive command line options or a simple configuration file are usually sufficient. For instance, the following configuration option preserves all applets in a jar:
-keep public class * extends java.applet.Applet
The user manual explains all available options and shows more examples of this powerful configuration style.
ProGuard is fast. It only takes seconds to process programs and libraries of several megabytes. The results section presents actual figures for a number of applications.
ProGuard is a command-line tool with an optional graphical user interface. It also comes with plugins for Ant and for the J2ME Wireless Toolkit.
ProGuard is a Java class file shrinker, optimizer, and obfuscator. The shrinking step detects and removes unused classes, fields, methods, and attributes. The optimization step analyzes and optimizes the bytecode of the methods. The obfuscation step renames the remaining classes, fields, and methods using short meaningless names. The resulting jars are smaller and harder to reverse-engineer.
ProGuard can also be used to list unused fields and methods in an application, and to print out the internal structure of class files.
ProGuard typically reads the input jars (or wars, ears, zips, or directories). It then shrinks, optimizes, and obfuscates them. It then writes the results to one or more output jars (or wars, ears, zips, or directories). The input jars can optionally contain resource files. ProGuard copies all non-class resource files from the input jars to the output jars. Their names and contents remain unchanged.
ProGuard requires the library jars (or wars, ears, zips, or directories) of the input jars to be specified. It can then reconstruct class hierarchies and other class dependencies, which are necessary for proper shrinking, optimization, and obfuscation. The library jars themselves always remain unchanged. You should still put them in the class path of your final application.
In order to determine which code has to be preserved and which code can be discarded or obfuscated, you have to specify one or more entry points to your code. These entry points are typically classes with main methods, applets, midlets, etc.
- In the shrinking step, ProGuard starts from these seeds and recursively determines which classes and class members are used. All other classes and class members are discarded.
- In the optimization step, ProGuard further optimizes the code. Among other optimizations, classes and methods that are not entry points can be made final, and some methods may be inlined.
- In the obfuscation step, ProGuard renames classes and class members that are not entry points. In this entire process, keeping the entry points ensures that they can still be accessed by their original names.
Any classes or class members of your code that are created or invoked dynamically (that is, by name) have to be specified as entry points too. It is generally impossible to determine these cases automatically, but ProGuard will offer some suggestions if keeping some classes or class members appears necessary. For proper results, you should at least be somewhat familiar with the code that you are processing.
ProGuard does handle Class.forName("SomeClass") and SomeClass.class constructs automatically. The referenced classes are preserved in the shrinking phase, and the string arguments are properly replaced in the obfuscation phase. With variable string arguments, it is generally impossible to determine their possible values (they might be read from a configuration file, for instance).
However, as mentioned, ProGuard will note constructs like "(SomeClass)Class.forName(variable).newInstance()". These might be an indication that the class or interface SomeClass and/or its implementations may need to be preserved. You can then adapt your configuration accordingly.
Whats New in 3.9 Stable Release:
- This release fixes a number of bugs.
- Notably, ".class" constructs compiled in Java 6 are now handled correctly.
- The optimization step now avoids a possible division by 0 and correctly processes local variables with indices larger than 255.
- The documentation and examples have been updated.
Whats New in 4.0 Beta Development Release:
- Added preverifier for Java 6 and Java Micro Edition, with new option -dontpreverify.
- Added new option -target to modify java version of processed class files.
- Made -keep options more orthogonal and flexible, with option modifiers allowshrinking, allowoptimization, and allowobfuscation.
- Added support for configuration by means of annotations.
- Improved shrinking of unused annotations.
- Added check on modification times of input and output, to avoid unnecessary processing, with new option -forceprocessing.
- Added new options -flattenpackagehierarchy and -repackageclasses (replacing -defaultpackage) to control obfuscation of packages names.
- Added new options -adaptresourcefilenames and -adaptresourcefilecontents, with file filters, to update resource files corresponding to obfuscated class names.
- Now respecting naming rule for nested class names (EnclosingClass$InnerClass) in obfuscation step, if InnerClasses attributes or EnclosingMethod attributes are being kept.
- Added new inter-procedural optimizations: method inlining and propagation of constant fields, constant arguments, and constant return values.
- Added optimized local variable allocation.
- Added over 250 new peephole optimizations.
- Improved making classes and class members public or protected.
- Now printing notes on suspiciously unkept classes in parameters of specified methods.
- Now printing notes for class names that dont seem to be fully qualified.
- Added support for uppercase filename extensions.
- Rewritten class file I/O code.
- Updated documentation and examples.
Download (MB)
Added: 2007-06-27 License: GPL (GNU General Public License) Price:
905 downloads
JackLab Audio Distribution 1.0 RC2
JackLab Audio Distribution is a remastered openSUSE for musicians, producers and media creators. more>>
JackLab Audio Distribution is a remastered openSUSE for musicians, producers and media creators.
The JackLab Team is proud to present the first public alpha-release of the JackLab Audio Distribution (JAD). The 1.2GB DVD iso can be downloaded from jacklab.org.
We have found that musicians have particular requirements for their Linux environment. A Linux-based distribution that is designed for music needs to be flexible, powerful, yet easy and quick to use. All of these things are essential in a busy, creative environment. Thinking about these requirements, we decided to base JAD on openSUSE due to its stability and long development history. All major administrative tasks can be done graphically and easily without having to learn any complicated terminal commands.
JAD will be fully compatible with the recently released openSUSE 10.2. It will contain a full production environment for media production, primarily music. For this, the JackLab team added a Realtime Kernel version 2.6.19 to have fast audio processing with a latency up to 1.5ms. The default audio system will be based on the the Jack Audio Connection Kit (JACK) which is designed for the needs of musicians and producers and gives a professional audio/midi controlling interface.
The installer is based on the acclaimed YaST2, which also serves as an easy-to-use administrative tool. To keep as many essential computer resources for music as possible, we have decided to use Enlightenment D17 desktop shell as the default window manager. KDE desktop environment is also included, so the user-friendly file manager - Konqueror, is available along with Kmail, Konversation, k3b and other KDE tools. For music creation and editing, we have included around 70 audio applications with sequencers, synthesizers and tools all installed and ready to go. User-friendly support for setting up and running VST instruments and effects is given. Additionally, there are applications for video production and a graphic suite that are included on the DVD. For browsing the internet, we have included Firefox 2.0 chosen for its stability, security and extendability.
JAD is a community based effort and is the culmination of the work of many contributors. Recently, JackLab and PackMan (packman.links2linux.de) have joined forces to offer JAD access to the PackMan repositories so that up-to-date audio software, non-audio software and multimedia codecs are available to JAD users. The JAD development team would like you to participate in the development process too. There are different ways you can help:
-As a tester, you can download the most recent version and use the bugtracker to report any problems.
-You can participate in the graphics contest: The best graphics submitted will be used as default for the bootscreen, wallpaper, skins and icons.
-You can submit feature requests and take part in discussions on the mailing list.
-For taking part in providing user support, there is a web based forum and an IRC channel - it is also an essential part of the development process to see feedback.
<<lessThe JackLab Team is proud to present the first public alpha-release of the JackLab Audio Distribution (JAD). The 1.2GB DVD iso can be downloaded from jacklab.org.
We have found that musicians have particular requirements for their Linux environment. A Linux-based distribution that is designed for music needs to be flexible, powerful, yet easy and quick to use. All of these things are essential in a busy, creative environment. Thinking about these requirements, we decided to base JAD on openSUSE due to its stability and long development history. All major administrative tasks can be done graphically and easily without having to learn any complicated terminal commands.
JAD will be fully compatible with the recently released openSUSE 10.2. It will contain a full production environment for media production, primarily music. For this, the JackLab team added a Realtime Kernel version 2.6.19 to have fast audio processing with a latency up to 1.5ms. The default audio system will be based on the the Jack Audio Connection Kit (JACK) which is designed for the needs of musicians and producers and gives a professional audio/midi controlling interface.
The installer is based on the acclaimed YaST2, which also serves as an easy-to-use administrative tool. To keep as many essential computer resources for music as possible, we have decided to use Enlightenment D17 desktop shell as the default window manager. KDE desktop environment is also included, so the user-friendly file manager - Konqueror, is available along with Kmail, Konversation, k3b and other KDE tools. For music creation and editing, we have included around 70 audio applications with sequencers, synthesizers and tools all installed and ready to go. User-friendly support for setting up and running VST instruments and effects is given. Additionally, there are applications for video production and a graphic suite that are included on the DVD. For browsing the internet, we have included Firefox 2.0 chosen for its stability, security and extendability.
JAD is a community based effort and is the culmination of the work of many contributors. Recently, JackLab and PackMan (packman.links2linux.de) have joined forces to offer JAD access to the PackMan repositories so that up-to-date audio software, non-audio software and multimedia codecs are available to JAD users. The JAD development team would like you to participate in the development process too. There are different ways you can help:
-As a tester, you can download the most recent version and use the bugtracker to report any problems.
-You can participate in the graphics contest: The best graphics submitted will be used as default for the bootscreen, wallpaper, skins and icons.
-You can submit feature requests and take part in discussions on the mailing list.
-For taking part in providing user support, there is a web based forum and an IRC channel - it is also an essential part of the development process to see feedback.
Download (1600MB)
Added: 2007-08-21 License: GPL (GNU General Public License) Price:
494 downloads
Other version of JackLab Audio Distribution
License:GPL (GNU General Public License)
fl0p 0.0.2 Beta
fl0p provides a passive OS fingerprinting tool. more>>
fl0p provides a passive OS fingerprinting tool.
fl0p is a passive L7 flow fingerprinter that examines TCP/UDP/ICMP packet sequences, can peek into cryptographic tunnels, can tell human beings and robots apart, and performs a couple of other infosec-related tricks.
This approach differs from the techniques used by most other passive
sniffers and mappers, and is advantageous in several interesting ways:
- General flow behavior remains largely unchanged regardless of whether
cryptographic tunnels or other obfuscation techniques are used. As
such, backdoors or firewall evasion techniques that for example
use SSL on port 443, can be told apart from browser traffic, and
further investigated.
- General insight into legitimate encrypted sessions can be gained; for
example, it is possible to remotely tell successful and failed SSH
authentication attempts apart, and react accordingly.
- Human actions can be told apart from automated efforts: it is possible
to ignore SMTP client programs, but single out humans manually
interacting with the server on port 25; similarly, automated SSH
login attempts can be told apart from human actions.
Enhancements:
- Chained signature support added.
- SMTP signatures
<<lessfl0p is a passive L7 flow fingerprinter that examines TCP/UDP/ICMP packet sequences, can peek into cryptographic tunnels, can tell human beings and robots apart, and performs a couple of other infosec-related tricks.
This approach differs from the techniques used by most other passive
sniffers and mappers, and is advantageous in several interesting ways:
- General flow behavior remains largely unchanged regardless of whether
cryptographic tunnels or other obfuscation techniques are used. As
such, backdoors or firewall evasion techniques that for example
use SSL on port 443, can be told apart from browser traffic, and
further investigated.
- General insight into legitimate encrypted sessions can be gained; for
example, it is possible to remotely tell successful and failed SSH
authentication attempts apart, and react accordingly.
- Human actions can be told apart from automated efforts: it is possible
to ignore SMTP client programs, but single out humans manually
interacting with the server on port 25; similarly, automated SSH
login attempts can be told apart from human actions.
Enhancements:
- Chained signature support added.
- SMTP signatures
Download (0.030MB)
Added: 2007-02-28 License: LGPL (GNU Lesser General Public License) Price:
968 downloads
Other version of fl0p
License:GPL (GNU General Public License)
Java Binary Enhancement Tool 3 R1
Java Binary Enhancement Tool is a Java assembler, dissassembler, and binary editor. more>>
The Java Binary Enhancement Tool (JBET) is a general Java program analysis and manipulation tool. Existing class files can be disassembled, reassembled, or edited programmatically through the JBET API. JBET can also be used to create new Java class files from scratch. JBET uses a convenient internal representation of all the contents of Java binary (.class) files, allowing the user to edit the classes easily, in a structured manner.
JBET was developed as part of the DARPA Self-Protecting Mobile Agents project under the OASIS and Active Networks programs (contract number N66001-00-C-8602) in order to study automated software obfuscation.
The Java language was chosen for this project because of the (relative) ease of constructing binary editing tools provided by the large amount of type information present in the class files. Our two reports, the Obfuscation Techniques Evaluation Report, and the Obfuscation Report, are available from the download area. The obfuscation tool developed is not part of this release.
JBET was also used in the DARPA/AFRL Survivable Server project (contract number F30602-00-C-0183) to add additional security checks to the Java Standard Library. (The Java SecurityManager API does not support many desirable security checks, such as continued authorization of file accesses after opening.)
JBET was used to replace the native method references in the Java standard library with stubs that call a pluggable security policy. This tool, called Jpolicy, is also available for download at this website. Jpolicy is very incomplete at this time, but may be interesting to those working in Java security or changing the standard library themselves.
The internal representation of Java class files used by JBET is intented to make it easy for programmers to write Java binary code transforms. Each element of Java class files has a corresponding internal data structure: ClassInfo for entire classes, MethodInfo for methods, FieldInfo for fields, Snippit for code blocks, and Instruction for individual instructions. Snippit and Instruction understand Java opcode syntax and semantics, allowing automated creation of valid Java programs. A Java-compatible class verifier is also included.
Some code transforms are difficult to program directly by manipulating Java instructions. For those transforms, a directed acyclic graph (DAG) representation of code is available. In the DAG representation, each basic block has a corresponding DAG, with a set of input and output nodes. Edges in the graph connect "producer" nodes (such as constants, or the result of calculations) to "user" nodes (such as method calls or other calculations). Methods are divided into basic blocks and control flow is stored at the basic block level (possible because Java has only fixed jump targets)
JBET requires a Java 1.4 virtual machine to run, although it can operate on class files from earlier Java versions. The packaging and build environment supplied supports Linux and Windows with Cygwin; however, the build process is simple and could be performed manually on other platforms. Perl is required for regression testing.
Jpolicy requires a Java 1.4 virtual machine to build, either Linux or Windows NT/XP with Cygwin. gcc is required for building on Windows (supplied with Cygwin). The runtime system can be either Java 1.3 or 1.4 (with Suns JVM only), running on Linux or Windows NT/XP. Windows 9x and Windows 2000 may work as well, but have not been tested.
Installation
1. Install jdk 1.4.1.
2. Set CLASSPATH to jdk1.4.1/jre/lib/rt.jar
3. cd src; make
4. If that didnt work, examine the makefile. java or javac may not be in the path.
5. To build a jar file that can be used with "java -jar jbet.jar", run "make jar".
6. If you have perl installed, run the tests with "make test".
Optionally, run "make regen; make test".
Make a symbolic link from jbet3/bin/jbet to somewhere in your path.
Usage
JBET uses the JNI format for class names, and JNI type and method descriptors. For a summary of this syntax, use jbet help syntax. Suns JVM specification may also be helpful.
To look at a class disassembly, use jbet print. Try disassembling a class you have source for, and was built with debug info (-g): jbet -P < classpath > print < classname >. Suns JVM specification has an instruction reference.
<<lessJBET was developed as part of the DARPA Self-Protecting Mobile Agents project under the OASIS and Active Networks programs (contract number N66001-00-C-8602) in order to study automated software obfuscation.
The Java language was chosen for this project because of the (relative) ease of constructing binary editing tools provided by the large amount of type information present in the class files. Our two reports, the Obfuscation Techniques Evaluation Report, and the Obfuscation Report, are available from the download area. The obfuscation tool developed is not part of this release.
JBET was also used in the DARPA/AFRL Survivable Server project (contract number F30602-00-C-0183) to add additional security checks to the Java Standard Library. (The Java SecurityManager API does not support many desirable security checks, such as continued authorization of file accesses after opening.)
JBET was used to replace the native method references in the Java standard library with stubs that call a pluggable security policy. This tool, called Jpolicy, is also available for download at this website. Jpolicy is very incomplete at this time, but may be interesting to those working in Java security or changing the standard library themselves.
The internal representation of Java class files used by JBET is intented to make it easy for programmers to write Java binary code transforms. Each element of Java class files has a corresponding internal data structure: ClassInfo for entire classes, MethodInfo for methods, FieldInfo for fields, Snippit for code blocks, and Instruction for individual instructions. Snippit and Instruction understand Java opcode syntax and semantics, allowing automated creation of valid Java programs. A Java-compatible class verifier is also included.
Some code transforms are difficult to program directly by manipulating Java instructions. For those transforms, a directed acyclic graph (DAG) representation of code is available. In the DAG representation, each basic block has a corresponding DAG, with a set of input and output nodes. Edges in the graph connect "producer" nodes (such as constants, or the result of calculations) to "user" nodes (such as method calls or other calculations). Methods are divided into basic blocks and control flow is stored at the basic block level (possible because Java has only fixed jump targets)
JBET requires a Java 1.4 virtual machine to run, although it can operate on class files from earlier Java versions. The packaging and build environment supplied supports Linux and Windows with Cygwin; however, the build process is simple and could be performed manually on other platforms. Perl is required for regression testing.
Jpolicy requires a Java 1.4 virtual machine to build, either Linux or Windows NT/XP with Cygwin. gcc is required for building on Windows (supplied with Cygwin). The runtime system can be either Java 1.3 or 1.4 (with Suns JVM only), running on Linux or Windows NT/XP. Windows 9x and Windows 2000 may work as well, but have not been tested.
Installation
1. Install jdk 1.4.1.
2. Set CLASSPATH to jdk1.4.1/jre/lib/rt.jar
3. cd src; make
4. If that didnt work, examine the makefile. java or javac may not be in the path.
5. To build a jar file that can be used with "java -jar jbet.jar", run "make jar".
6. If you have perl installed, run the tests with "make test".
Optionally, run "make regen; make test".
Make a symbolic link from jbet3/bin/jbet to somewhere in your path.
Usage
JBET uses the JNI format for class names, and JNI type and method descriptors. For a summary of this syntax, use jbet help syntax. Suns JVM specification may also be helpful.
To look at a class disassembly, use jbet print. Try disassembling a class you have source for, and was built with debug info (-g): jbet -P < classpath > print < classname >. Suns JVM specification has an instruction reference.
Download (0.19MB)
Added: 2005-03-07 License: BSD License Price:
1697 downloads
Tilt-n-Roll Demo
Tilt-n-Roll is a puzzle game where you must roll your marble through the 3d maze to the exit. more>>
Tilt-n-Roll is a puzzle game where you must roll your marble through the 3d maze to the exit.
This game is an entry into Intels Game Demo 2007 contest. Please take the time to rate my game and help me win a prize!
Tilt the 3d maze and roll your marble to the exit. The final version will fully support laptop SMS / HDAPS sensors to allow players to tilt the laptop to play! (Support is partially there now - Linux users get an SDL patch and Mac users can wrangle with Unimotion).
Main features:
- Multiple powerups, monsters, switches, puzzles, traps...
- Built-in level editor: design and share your mazes with friends!
- Keyboard or mouse control for unsupported laptops
- Plenty of sound effects and catchy music
- Physics calculations are run in a second thread: multicore users should see an increase in both framerate and simulation accuracy
- Runs on Windows, Mac OS or Linux.
- Completely open-source software under the GNU GPL!
<<lessThis game is an entry into Intels Game Demo 2007 contest. Please take the time to rate my game and help me win a prize!
Tilt the 3d maze and roll your marble to the exit. The final version will fully support laptop SMS / HDAPS sensors to allow players to tilt the laptop to play! (Support is partially there now - Linux users get an SDL patch and Mac users can wrangle with Unimotion).
Main features:
- Multiple powerups, monsters, switches, puzzles, traps...
- Built-in level editor: design and share your mazes with friends!
- Keyboard or mouse control for unsupported laptops
- Plenty of sound effects and catchy music
- Physics calculations are run in a second thread: multicore users should see an increase in both framerate and simulation accuracy
- Runs on Windows, Mac OS or Linux.
- Completely open-source software under the GNU GPL!
Download (2.3MB)
Added: 2007-07-16 License: GPL (GNU General Public License) Price:
834 downloads
Dangerous Snowboarding 2.0
Dangerous Snowboarding is a game where you must run humans and bears with your snowboard down. more>>
Dangerous Snowboarding is a game where you must run humans and bears with your snowboard down.
This game was made for a programmers-contest (got the 3rd place).
Control the snowboarder with your arrow keys. Jumping on objects in row will give you a combination-bonus.
Objects:
- Human - You can run it down however you want to.
- Bear - Jump on it.
- Tree - Absolute deadly.
<<lessThis game was made for a programmers-contest (got the 3rd place).
Control the snowboarder with your arrow keys. Jumping on objects in row will give you a combination-bonus.
Objects:
- Human - You can run it down however you want to.
- Bear - Jump on it.
- Tree - Absolute deadly.
Download (0.42MB)
Added: 2007-05-21 License: GPL (GNU General Public License) Price:
896 downloads
DSPAM 3.8.0
DSPAM is a server-side statistical anti-spam agent for Unix email servers. more>>
DSPAM is a server-side statistical anti-spam agent for Unix email servers.
DSPAM masquerades as the email servers local delivery agent and effectively filters spam using a combination of de-obfuscation techniques, specialized algorithms, and statistical analysis.
The result is an administratively maintenance-free, self-learning anti-spam tool. DSPAM has yielded real-world success rates beyond 99.9% accuracy with less than a 0.01% chance of false positives.
The DSPAM project attempts to set itself apart from other filters by focusing on the following areas:
- DSPAM has a strong drive for research. Many new algorithms and approaches to fighting spam have come out of the DSPAM project. Some of the approaches deployed in DSPAM include Concept Identification, Neural Networking, Message Inoculation , advanced de-obfuscation techniques, and a new noise reduction algorithm called Bayesian Noise Reduction. Were always looking for new approaches to improving the accuracy of DSPAM.
- A strong focus on large-scale implementation support. The largest implementation of DSPAM weve heard about to-date involves 350,000 users, with the next largest being around 125,000, then 100,000. DSPAM has been designed to run with a very short execution time (between 0.01s - 0.03s real time for classification and between 0.03s - 0.10s real time for training, on average hardware), and has been equipped with a storage driver API allowing several different storage mechanisms to be used. Depending on disk space constraints, accuracy can be traded off for additional disk space or vice-versa.
- Usability. DSPAM was designed with "grandma" in mind. Users can retrain by either forwarding any spam they receive to a spam address, or (in v3.4.2+) use the history function of the included web interface to quickly mark spam and deliver false positives. End-users dont need to know any commandline utilities or other complexities plaguing some other such tools. Functions such as whitelisting and keyword inventory are automatic (based on statistical functions) and therefore require no user intervention.
Main features:
- System-wide administratively-maintenance free filtering. The DSPAM agent can integrate into just about any network and can even be implemented as an SMTP gateway.
- A simple-to-use learning mechanism. DSPAM allows users to simply forward their spam to their "spam email address" for learning, eliminating any learning curve necessary to make it usable by your customers. The information used in every calculation is temporarily stored on the server, enabling DSPAM to relearn the original message by looking for a small signature in the forwarded spam. As a result, users dont have to be trained to bounce messages around, and administrators dont have to worry about incompatible mail clients.
- Support for a variety of storage implementations. DSPAMs storage driver API allows the administrator to choose how they wish to store data. Currently supported drivers include SQLite, Berkeley DB3, Berkeley DB4, MySQL, PostgreSQL and Oracle.
- Written in C for speed, performance, and scalability. Unlike Python or PERL solutions DSPAM is written in a low-level compiled language, meaning there is very little overhead. DSPAM runs fast, efficient, and doesnt depend on any third-party language interpreters.
- MTA support. DSPAM works great with Sendmail, Postfix, Qmail, Courier, and Exim, and should work well with many other MTAs. In the event you happen to run something like Exchange, DSPAM can be implemented on your network as an SMTP gateway. Just point your MX at it and configure it to relay to your mail server.
Enhancements:
- This is an unofficial release, but significant.
- Several significant bugfixes have been made.
- Bill Yerazunis Orthogonal Sparse Bigram (OSB) tokenizer algorithm has been added.
- The code has been significantly optimized to run much faster and with fewer resources.
<<lessDSPAM masquerades as the email servers local delivery agent and effectively filters spam using a combination of de-obfuscation techniques, specialized algorithms, and statistical analysis.
The result is an administratively maintenance-free, self-learning anti-spam tool. DSPAM has yielded real-world success rates beyond 99.9% accuracy with less than a 0.01% chance of false positives.
The DSPAM project attempts to set itself apart from other filters by focusing on the following areas:
- DSPAM has a strong drive for research. Many new algorithms and approaches to fighting spam have come out of the DSPAM project. Some of the approaches deployed in DSPAM include Concept Identification, Neural Networking, Message Inoculation , advanced de-obfuscation techniques, and a new noise reduction algorithm called Bayesian Noise Reduction. Were always looking for new approaches to improving the accuracy of DSPAM.
- A strong focus on large-scale implementation support. The largest implementation of DSPAM weve heard about to-date involves 350,000 users, with the next largest being around 125,000, then 100,000. DSPAM has been designed to run with a very short execution time (between 0.01s - 0.03s real time for classification and between 0.03s - 0.10s real time for training, on average hardware), and has been equipped with a storage driver API allowing several different storage mechanisms to be used. Depending on disk space constraints, accuracy can be traded off for additional disk space or vice-versa.
- Usability. DSPAM was designed with "grandma" in mind. Users can retrain by either forwarding any spam they receive to a spam address, or (in v3.4.2+) use the history function of the included web interface to quickly mark spam and deliver false positives. End-users dont need to know any commandline utilities or other complexities plaguing some other such tools. Functions such as whitelisting and keyword inventory are automatic (based on statistical functions) and therefore require no user intervention.
Main features:
- System-wide administratively-maintenance free filtering. The DSPAM agent can integrate into just about any network and can even be implemented as an SMTP gateway.
- A simple-to-use learning mechanism. DSPAM allows users to simply forward their spam to their "spam email address" for learning, eliminating any learning curve necessary to make it usable by your customers. The information used in every calculation is temporarily stored on the server, enabling DSPAM to relearn the original message by looking for a small signature in the forwarded spam. As a result, users dont have to be trained to bounce messages around, and administrators dont have to worry about incompatible mail clients.
- Support for a variety of storage implementations. DSPAMs storage driver API allows the administrator to choose how they wish to store data. Currently supported drivers include SQLite, Berkeley DB3, Berkeley DB4, MySQL, PostgreSQL and Oracle.
- Written in C for speed, performance, and scalability. Unlike Python or PERL solutions DSPAM is written in a low-level compiled language, meaning there is very little overhead. DSPAM runs fast, efficient, and doesnt depend on any third-party language interpreters.
- MTA support. DSPAM works great with Sendmail, Postfix, Qmail, Courier, and Exim, and should work well with many other MTAs. In the event you happen to run something like Exchange, DSPAM can be implemented on your network as an SMTP gateway. Just point your MX at it and configure it to relay to your mail server.
Enhancements:
- This is an unofficial release, but significant.
- Several significant bugfixes have been made.
- Bill Yerazunis Orthogonal Sparse Bigram (OSB) tokenizer algorithm has been added.
- The code has been significantly optimized to run much faster and with fewer resources.
Download (0.70MB)
Added: 2007-03-18 License: GPL (GNU General Public License) Price:
950 downloads
Simple Flash Menu 1.1.12
Simple Flash Menu is a tool for making nested menus for HTML pages. more>>
Simple Flash Menu allows fast constructing nested menus for html pages (like on left side of this page), simply by editing xml file. No, dont afraid, xml knowledge isnt required, look on example and make similar.
This done with macromedia flash, you must place on server flash script which will analyze xml file and draw menus depending on its contest (about 10KB) and xml file or multiple xml files describing your menus. Nothing more must be done.
Now available two versions: one - very small without any decorations, and a bit larger with simple menu decorations. You can choose depending on your needs.
Requirements: any browser with Macromedia Flash Player 5 or Macromdia Flash Player 6 (MX) plugin. Wouldnt work with Flash Player 4 and earliers.
Tested in Internet Explorer 6.0, 6.0 SP1; Mozilla 0.9.8 - 1.2b (aka Netscape 6-7); Netscape 4.78; Opera 6.0 - 6.0.4, 7.0b1 in Linux and Windows enviroments.
Options:
- menu_file xml file load menu from
- html_width horizontal space on html page conducted for menu
- html_height vertical space on html page conducted for menu
- window open all links in specified window
- jscript instead of opening window call specified javascript function with parameters: href,jattr,state. Only one window or jscript can be selected
- jattr optional javascript function argument
- state specifies current menu state (i.e. which submenus open and which closed)
- font_size labels font size for all menu items (default: 36)
- left_margin menu left margin (default: 5)
- up_margin menu upper margin (default: 5)
- submenu_indention indention of all submenu items in pixels (default: 20)
- menuitems_overlap specifies distance between menu items, positive numbers defines overlapping menu items (default: 0.2)
- decor enable decorations (only 1.1.x)
- decor_width decoration width
- decor_spacing white space between decoration and menu label
- send_state Boolean, specifies if state parameter (information which submenus open, which closed) by default must be sent to all pages, opened from menu, or not (default is to send).
- fg Specifies foreground color for inactive item (fg="#0000FF")
- afg Specifies foreground color for active item (afg="#FF0000")
- bg Specifies background color for inactive item (bg="255,128,0,100" - here 255 - red component, 128 - green component, 0 - blue component, 100 - alpha; "255,255,255,100" is visble white, "0,0,0,0" - invisible black)
- abg Specifies background color for active item (some as bg)
- dfg Specifies decoration color inactive item (some as bg)
- adfg Specifies decoration color for active item (some as bg)
<<lessThis done with macromedia flash, you must place on server flash script which will analyze xml file and draw menus depending on its contest (about 10KB) and xml file or multiple xml files describing your menus. Nothing more must be done.
Now available two versions: one - very small without any decorations, and a bit larger with simple menu decorations. You can choose depending on your needs.
Requirements: any browser with Macromedia Flash Player 5 or Macromdia Flash Player 6 (MX) plugin. Wouldnt work with Flash Player 4 and earliers.
Tested in Internet Explorer 6.0, 6.0 SP1; Mozilla 0.9.8 - 1.2b (aka Netscape 6-7); Netscape 4.78; Opera 6.0 - 6.0.4, 7.0b1 in Linux and Windows enviroments.
Options:
- menu_file xml file load menu from
- html_width horizontal space on html page conducted for menu
- html_height vertical space on html page conducted for menu
- window open all links in specified window
- jscript instead of opening window call specified javascript function with parameters: href,jattr,state. Only one window or jscript can be selected
- jattr optional javascript function argument
- state specifies current menu state (i.e. which submenus open and which closed)
- font_size labels font size for all menu items (default: 36)
- left_margin menu left margin (default: 5)
- up_margin menu upper margin (default: 5)
- submenu_indention indention of all submenu items in pixels (default: 20)
- menuitems_overlap specifies distance between menu items, positive numbers defines overlapping menu items (default: 0.2)
- decor enable decorations (only 1.1.x)
- decor_width decoration width
- decor_spacing white space between decoration and menu label
- send_state Boolean, specifies if state parameter (information which submenus open, which closed) by default must be sent to all pages, opened from menu, or not (default is to send).
- fg Specifies foreground color for inactive item (fg="#0000FF")
- afg Specifies foreground color for active item (afg="#FF0000")
- bg Specifies background color for inactive item (bg="255,128,0,100" - here 255 - red component, 128 - green component, 0 - blue component, 100 - alpha; "255,255,255,100" is visble white, "0,0,0,0" - invisible black)
- abg Specifies background color for active item (some as bg)
- dfg Specifies decoration color inactive item (some as bg)
- adfg Specifies decoration color for active item (some as bg)
Download (0.020MB)
Added: 2005-05-05 License: GPL (GNU General Public License) Price:
1646 downloads
DOMjudge 2.0.0
DOMjudge is an automated judgement system to run programming contests. more>>
DOMjudge is an automated judge system to run programming contests.
Main features:
- Lightweight, depends on standard software to do its task
- Webinterface for portability and simplicity
- Scalable: distributed judging is easy
- Modular system for plugging in languages/compilers
- Features rejudging, clarifications, detailed submission/judging info
- Designed with security in mind
- Has been used in live contests
- Its Open Source, Free Software
<<lessMain features:
- Lightweight, depends on standard software to do its task
- Webinterface for portability and simplicity
- Scalable: distributed judging is easy
- Modular system for plugging in languages/compilers
- Features rejudging, clarifications, detailed submission/judging info
- Designed with security in mind
- Has been used in live contests
- Its Open Source, Free Software
Download (1.1MB)
Added: 2007-07-23 License: GPL (GNU General Public License) Price:
826 downloads
LBreakout2 2.6 Beta 7
LBreakout2 is the successor to LBreakout. more>>
The successor to LBreakout offers you a new challenge in more than 50 levels with loads of new bonuses (goldshower, joker, explosive balls, bonus magnet ...), maluses (chaos, darkness, weak balls, malus magnet ...) and special bricks (growing bricks, explosive bricks, regenerative bricks ...). If you are still hungry for more after that you can create your own levelsets with the integrated level editor.
LBreakout2 won the No Starch Press SDL Game Contest and since 2.5beta there is an internet test server available at petersdtp.net:8000.
<<lessLBreakout2 won the No Starch Press SDL Game Contest and since 2.5beta there is an internet test server available at petersdtp.net:8000.
Download (3.1MB)
Added: 2006-08-28 License: GPL (GNU General Public License) Price:
1157 downloads
Secleted [ 0 ] software to compare
- Page: 1 of 2
- 1
- 2
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above obfuscation contest 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