file deletion
File::Repl 1.20
File::Repl is a Perl module that provides file replication utilities. more>>
SYNOPSIS
use File::Repl;
%con = {
dira => C:/perl,
dirb => M:/perl,
verbose => 1,
age => 10,
};
$ref=File::Repl->New(%con);
$r1 = $ref->Update(.p(l|m),ab,1);
$r2 = $ref->Update(.t.*,ab,1,.tmp$);
The File:Repl provides simple file replication and management utilities. Its main functions are
File Replication
Allowing two directory structures to be maintained, ensuring files that meet selection logic criteria are mirrored and otherwise synchronized.
Bulk Renaming
Allowing files in a directory structure to be renamed according to the selection logic.
Compressing
Allowing files in a directory structure to be compressed according to a given logic.
Process
Run a common perl process against files in a directory structure according to selection logic.
Deletion
Allowing files in a directory structure to be deleted according to the selection logic.
C Comic Collection 0.04
C Comic Collection project is a GTK application for downloading, cataloging, and viewing Web comics. more>>
To compile this software, just type "make".
It requires development libraries for gtk, gtk_imlib, cURL, mysql and pthreads. If youre on Linux these should come with your distrobution; I dunno for other OS. If you only have the runtimes and are using a 386 derivative (Pentium et al) you can get a binary from http://c-comiccollect.sourceforge.net.
Compilation will produce a binary called "gtk-cc"; copy this to your /usr/bin (youll need root privileges, copy to your ~/bin (you wont) or just run it from where it is (./gtk-cc &).
You can populate the database by running the included "comiccollection.sql" against an empty database. (mysql -u < username > < dbname > < comiccollection.sql). It even includes some comics to get you started!
Enhancements:
- Minor improvements - only really relevant if you view KeenSpace comics.
- Fixed file non-deletion problem
- Fixed KeenSpace file download problem
THC-SecureDelete 3.1
THC-SecureDelete is the best secure data deletion toolkit! more>>
These tools can wipe files, free disk space, swap and memory! Changes: Linux LKM for secure file deletion included, small bufixes.
COMMANDLINE OPTIONS
Here are the commandline options:
srm [-d] [-f] [-l] [-l] [-v] [-z] file [file] [another file] [etc.]
sfill [-i] [-I] [-f] [-l] [-l] [-v] [-z] target-directory
sswap [-f] [-l] [-l] [-v] [-z] /dev/of_swap_filesystem
smem [-f] [-l] [-l] [-v]
The -s options are depricated now, and will be ignored.
-d dont delete the dot special files "." and ".." on the
commandline (only srm)
-i wipe only free inode space, not free disk space on the filesystem
(only sfill)
-I wipe only free disk space, not free inode space on the filesystem
(only sfill)
-f fast writes without O_SYNC and sync() between writes. Much faster
but less secure.
-l lessens the security. Only one random plus one pass with 0xff are
written.
-l a seconds time as parameter switches into the insecurest mode,
it overwrites the file only once with 0xff.
-v turn verbose mode on.
-z last wipe mode writes zeros instead of random data
file file to delete. Wildcards are of course allowed.
For unix: you need write permissions. For msdos: It may be hidden,
system, readonly etc. we dont care.
target-directory target is a directory in the filesystem to write to.
swap_filesystem your swap filesystem. Unmount it first!!
only tested on linux
Options may be applied like "-lfv", "-l -f -v" or a mix.
Note: If you use a gnu-compactible linux, you can use the patch rm.diff included in the package to put the features from srm into your normal rm. Just enter your fileutils-3.16 directory, type "patch < rm.diff" and then "make". You need at least one -s switch to activate (1 overwrite). Note that -sss is needed for full security.
NOTE:
For the linux kernel module, you just have to do "insmod sdel-mod" to load the module. After that, all files, which are deleted by any program are then wiped once before the space is marked as free.
Postfix SMTP Monitoring Solution
Postfix SMTP Monitoring Solution is a set of three Perl CGI scripts used to monitor the SMTP queue. more>>
I needed a web-based solution to monitor my Postfix SMTP relay, which enabled me to remove messages that become "stuck" in the queue. I wrote three simple Perl scripts, and used Sudo to give me the desired functionality.
I am uploading these scripts in case they are useful to others. Assuming you have Apache configured correctly on your Postfix server, it should be as easy as placing the three .cgi files into your webservers cgi-bin directory, and making the appropriate modifications to your /etc/sudoers file (see the README contained in the tarball).
File::Path 5.8.8
File::Path is a Perl module to create or remove directory trees. more>>
SYNOPSIS
use File::Path;
mkpath([/foo/bar/baz, blurfl/quux], 1, 0711);
rmtree([foo/bar/baz, blurfl/quux], 1, 1);
The mkpath function provides a convenient way to create directories, even if your mkdir kernel call wont create more than one level of directory at a time. mkpath takes three arguments:
the name of the path to create, or a reference to a list of paths to create,
a boolean value, which if TRUE will cause mkpath to print the name of each directory as it is created (defaults to FALSE), and
the numeric mode to use when creating the directories (defaults to 0777), to be modified by the current umask.
It returns a list of all directories (including intermediates, determined using the Unix / separator) created.
If a system error prevents a directory from being created, then the mkpath function throws a fatal error with Carp::croak. This error can be trapped with an eval block:
eval { mkpath($dir) };
if ($@) {
print "Couldnt create $dir: $@";
}
Similarly, the rmtree function provides a convenient way to delete a subtree from the directory structure, much like the Unix command rm -r. rmtree takes three arguments:
the root of the subtree to delete, or a reference to a list of roots. All of the files and directories below each root, as well as the roots themselves, will be deleted.
a boolean value, which if TRUE will cause rmtree to print a message each time it examines a file, giving the name of the file, and indicating whether its using rmdir or unlink to remove it, or that its skipping it. (defaults to FALSE)
a boolean value, which if TRUE will cause rmtree to skip any files to which you do not have delete access (if running under VMS) or write access (if running under another OS). This will change in the future when a criterion for delete permission under OSs other than VMS is settled. (defaults to FALSE)
It returns the number of files successfully deleted. Symlinks are simply deleted and not followed.
NOTE: There are race conditions internal to the implementation of rmtree making it unsafe to use on directory trees which may be altered or moved while rmtree is running, and in particular on any directory trees with any path components or subdirectories potentially writable by untrusted users.
Additionally, if the third parameter is not TRUE and rmtree is interrupted, it may leave files and directories with permissions altered to allow deletion (and older versions of this module would even set files and directories to world-read/writable!)
Note also that the occurrence of errors in rmtree can be determined only by trapping diagnostic messages using $SIG{__WARN__}; it is not apparent from the return value.
e2undel 0.82
e2undel is an undelete tool for the ext2 file system under Linux. more>>
Included is a library that allows to recover deleted files by name. It does not require any knowledge about the secrets of the ext2 file system and should be useable by everyone.
e2undel does not manipulate internal ext2 structures and requires only read access to the file system where the files to recover are located. It accesses the ext2 file system by way of Ted Tsos ext2fs library; so I think ist is safe to use.
The e2undel package contains a library that allows you to recover deleted files by their names. Usually, when a file is deleted, its name is lost; after installing this library, the names of deleted files are logged and accessible via the e2undel program.
e2undel searches all inodes marked as deleted on a file system and lists them assorted by owner and time of deletion. Additionally, it gives you the file size and tries to determine the file type in the way file(1) does.
If you did not just delete a whole bunch of files with a rm -r *, this information should be helpful to find out which of the deleted files you would like to recover. After selecting a deleted file, e2undel assembles its data by reading the data blocks (whose numbers are still stored in the inode), and writes the data to a new file.
Inluded in the package is the undel library. This library, loaded by the $LD_PRELOAD mechanism, hooks into the system calls unlink(2) and remove(3). libundel logs the device (like /dev/hdb7 etc.), the inode number, and the name of each file that is deleted by these system calls in a log file (/var/e2undel/e2undel by default).
With this information, it is possible to recover deleted files by name. Of course, e2undel also works without the undel library (as outlined in the deleted file recovery howto), but you lose the functionality to recover deleted files by name if you dont use libundel - maybe the best part of this tool.
e2undel does not actually undelete a file (i.e., does not manipulate ext2 internal structures like inode, block bitmap, and inode bitmap). Instead it recovers the data of a deleted file and saves it in a new file.
FlexiCrypt 1.1
FlexiCrypt is a universal cryptography toolkit for managing certificates and symmetric keys. more>>
Main features:
- key managing (asymmetric and symmetric)
- generate certificates
- symmetric encryption
- asymmetric encryption
- hybrid encryption
- decryption
- XML-signatures
- message digest computation
- secure file deletion (wipe files)
- performance comparison
pftabled 1.06
pftabled daemon is a small helper to make OpenBSDs pf tables reachable from other hosts. more>>
Usage
pftabled [options...]
-d Run as daemon in the background
-v Log all received packets
-a address Bind to this address (default: 0.0.0.0)
-f table Force requests to use this table
-k keyfile Read authentication key from file
-p port Bind to this port (default: 56789)
-t timeout Remove IPs from table after timeout seconds
Client examples
$ pftabled-client -k /etc/key fw.example.com 56789 spam add 1.2.3.4
$ pftabled-client -k /etc/key fw.example.com 56789 spam del 4.3.2.1/24
$ pftabled-client -k /etc/key fw.example.com 56789 spam flush
Enhancements:
- A mask field was added to enable addition/deletion of whole networks.
- Client option parsing was changed.
QDevelop 0.20
QDevelop project is a development environment entirely dedicated to Qt4. more>>
QDevelop requires Qt4, gcc under Linux or MinGW under Windows, possibly gdb for programs debugging and ctags for code completion.
QDevelop is available in English, French, German, Dutch, Polish, Spanish, Chinese, Russian and Italian. If you want to translate in your language, please contact me.
QDevelop is not a Kdevelop like or reduced. Its an independent IDE dedicated to Qt and is totally independent of KDevelop. Less complete, but faster, light and especially multi-platforms. QDevelop and KDevelop have different code sources.
Main features:
- Cross Platform: Supports Linux, Windows 2000/XP/Vista, Mac OS X and FreeBSD
- Reading and writing project files (with some small restrictions)
- Add / Delete and edit project files (or external files)
- Management of normal projects and project SUBDIRS.
- Independent build for each projects. I.e. are rebuild only the really modified projects.
- A powerful editor with code completion, syntax highligthing, bookmarks, auto-brackets, auto-indentation, auto-save before build, line numbers and selection margin.
- A class browser who allows the programmer to browse, navigate, or visualize the structure of classes, members and functions of projects.
- In the event of errors or warnings of compilation, double-click on the line opens the corresponding editor.
- Debugging with gdb. Toggle breakpoints by click in the line number on editor or by right click. When the program is stopped on breakpoint, the local variables are automatically showed on output dock.
- In the editor, F1 call Assistant to show help for the word under the cursor.
- Open Source
- Its Free!
Enhancements:
Name:
- QIde becomes QDevelop at October 4, 2006
Corrections:
- A crash if a file is opened without project
- Bug in classes explorer when a sub-project have a name identical of the main project.
- Deletion of Auto-Hide docks, not working with Qt 4.2
- The settings are now written in qdevelop.ini file in the user home directory.
- The database of project is named "qdevelop-settings.db" in project directory.
- New C++ highlighter
Adds:
- The Default projects directory can be set in options dialog.
- Bookmarks. Bookmarks can be toggled on menu bar and by right-click in margin number or editor.
- Add "Next Bookmark" and "Previous Bookmark" to menu Bookmark.
- Add Bookmarks toolbar.
- Save bookmarks and breakpoints in project settings
- Add "console" to CONFIG variable in (.pro) file for new projects to have qDebug() written on debug console under Windows.
- Modification of the class browser to understand functions overloading.
- When a project is closed, the content of class browser is saved in database project.db. With this database, the content is reloaded very quickly during the loading of the project. This feature require to have the SQL driver sqlite enable. On build enter the option -qt-sql-sqlite after the configure command.
- Moving tabs with mouse to switch between us
- Detection when a file was modified by another program and ask for save or reload.
- Two tabs to show debugged variables program. Deletion of line edit "Debug command", obsolete with new tabs.
- Templates to create a project (based on dialog or main window).
- The code completion list contains the name and signature of functions.
- Entries "Close Other Tabs" and "Close All Tabs" in popup menu showed by right-click on editor Tab.
- Add Polish, Spanish, Chinese and Russian translations
- The application can be build using cmake (experimental!)
Wallpaper Control 1.4
Wallpaper Control is a graphical wallpaper manager. more>>
Wallpaper Control is a non-window manager-specific wallpaper manager for the X Window System.
It aims to be a full featured utility for managing and setting your images you use as wallpaper.
Features include a preview window, directory listing, and deletion of graphics from hard drive.
FASTA to multi-FASTA converter 1.3.1
www.DNABaser.com This tool will look for all DNA FASTA files in the specified folder and will merge their content in a single file. The output file is automatically saved on the HDD. Other software: DNA Baser is an affordable alternative for assembly of DNA sequences and generation of contigs. File formats supported are abi, scf and seq (or FASTA). Chromatograms of the assembled sequences are displayed in a synchronized format with the generated contig. more>>
FASTA to multi-FASTA converter - www.DNABaser.com
This tool will look for all DNA FASTA files in the specified folder and will merge the content in a single file. The output file is automatically saved on the HDD in the same folder as the input files.
Other software by HeracleSoftware:
DNA Baser is an affordable alternative for assembly of DNA sequences and generation of contigs. File formats supported are abi, scf and seq (or FASTA). Chromatograms of the assembled sequences are displayed in a synchronized format with the generated contig. Ambiguous bases in the contig are highlighted and corrections are suggested by DNABaser based on Quality Values of the trace files. Minimum input from the user required. Editing of ambiguous bases, including insertion and deletion, is possible. The settings of the assembly engine can be adjusted by the user. The user can personalize the appearance of chromatograms, nucleotides, background. The Quality Values of the trace files are displayed above chromatograms, so that the user can easily decide on the corrections in the final contig. Original chromatogram files are automatically trimmed based on Quality Values. The contig is automatically saved in FASTA format, in the same directory with the original trace files. By using a built-up database of primer and vector sequences, that can be edited/upgraded by the user, DNABaser can be set to automatically trim the vector sequence out of the final contig.
The affordable price is another important feature of DNABaser, at only 490 USD per single license; significant discounts are offered for institutions that order several licenses of DNABaser (see our pricing policy on our web pages).
Enhancements:
Version 1.3
better speed
System Requirements:CPU: 100MHz, 16MB RAM, Video 800x600, 0.3MB HDD free space<<less
Horde Groupware Webmail Edition 1.0.1
Horde Groupware Webmail Edition is a free, enterprise ready, browser based communication suite. more>>
Horde Groupware Webmail Edition bundles the separately available applications IMP, Ingo, Kronolith, Turba, Nag and Mnemo.
The project can be extended with any of the released Horde applications or the Horde modules that are still in development, like a file manager, a bookmark manager, a forum or a wiki.
Main features:
- IMAP and POP3 webmail client
- Message filtering
- Message searching
- HTML message composition with WYSIWIG editor
- Spell checking
- Built in attachment viewers
- Encrypting and signing of messages (S/MIME and PGP)
- Quota support
- Keyboard navigation
- Full character set support for folders names and email messages
- Conversation view of all messages in a thread
- Folder tree in left menu pane
- Message previews in mailbox view
- Downloading of message attachments in a ZIP file
- Fetching of messages from external email accounts
- Flexible, individual alias addresses
- IMAP folder subscriptions
- Shared IMAP folders
- Graphical emoticons
- Support for mailing list headers
- Forwarding of multiple messages at once
- Attachments sent as links
Enhancements:
- A local arbitrary file deletion vulnerability and XSS vulnerabilities in the Webmail search screen and thread view have been fixed.
- Displaying of PGP messages has been improved.
- mailto: links in HTML email messages are turned into IMP compose links.
- The Oracle session handler has been rewritten.
- Validation of some email distribution lists has been fixed.
- Compatibility with Internet Explorer 7 has been improved.
- Blacklists and whitelists when using the IMAP driver have been fixed.
- Many small bugfixes and improvements have been made.
DupeFinder 1.0.2
DupeFinder is a simple application for locating, moving, renaming, and deleting duplicate files in a directory structure. more>>
Its perfect both for users who havent kept their hard drives very well organized and need to do some cleaning to free space, and for users who like to keep lots of backup copies of important data "just in case" something bad should happen.
Main features:
Although DupeFinder is a quite small application, it should have all of the features you will need to remove and reorganize large directories full of duplicate files:
- Well designed graphical interface with full tooltip and "Whats This?" question button support, useful in an application which you probably wont need to use frequently
- Quick processing by eliminating analysis of unwanted data through file extension filtering
- View files in external applications by double-clicking
- Rename files in place or move to new locations
- Default settings disallow deletion of all copies of duplicate files to prevent accidental data loss
- Generate simple reports identifying groups of duplicate files for later processing
While everything works pretty well in most cases, there are a few issues with DupeFinder to be aware of. I hope to fix most of the following bugs sometime soon:
- May crash if files containing "~" or ":" characters are encountered
- May crash if self referencing symlinks are encountered
- Zero byte files cannot be deleted
- May not be able to delete files with Unicode characters in filename
- Display does not update if identified duplicates are moved, renamed or modified external to DupeFinder
deb-install 0.6.1
deb-install it installs packages and archives and shows information about them. more>>
The goal is to create one command that installs any package into your system, or provides information about any package, without the user having to know all the different tools there are.
Version restrictions:
- On some systems bash reports deb-install as culprit if one of its configuration files contains an invalid command. Other then a slightly misleading error message, this doesnt have bad consequences.
Enhancements:
- Made deb-install able to recover from error when working with local files (more exactly: When working with a local file, deb-install remembers the state it is in. After it aborted, you can restart it in such a way, that it enters into that same state again [preferably after you removed the reason for the error].)
- Added option --abort-on , which lets you stop deb-install partway, when working with local files.
- Added option --dpkg-buildpackage, which lets you pass through options to that tool (used to build the .deb file if you compile from source).
- Changed location of user specific configuration files (to ~/.deb-install/deb-install.conf).
- Improved tab completion: It is faster, can expand the tilde (~), and now also works for files and directories containing spaces.
- Changed temp deletion behaviour. Now deb-install only deletes a left over temp directory if you tell it to work with a local file. That means you can install missing packages using apt-get via deb-install when a compile aborts, and resume the compile afterwards.
- Removed tracking of changes to the temp directory. The code was complicated, and now that the temp directory isnt deleted as often, I think the ability is not very useful.
- deb-install doesnt switch into searchmode anymore, if it cant find a file or package. After all, we now have tab completion, and search mode does take quite some time. Who says the user wants to do that?
- Added support for slackware packages.
- Changed interpretation of configuration files: Until now, they were read in by a simple text parser. Now they are executed by bash. This gives the user much more possibilities of how to define the variables (.e.g. conditional defines). Furthermore, all program constants are now redefineable in the conf files.
- Important: Old configuration files are NOT compatible (They contain spaces around "=", were there should be none).
- Added option --, which works just as you probably expect: No more options after this one. This allows for filenames starting with a dash.
- Expanded the documentation.
phpCodeCabinet 0.5
phpCodeCabinet provides an extensive, multi-platform code snippet library for any programming language. more>>
phpCodeCabinet allows developers to store code snippets from any language. Features include user-defined categories, syntax highlighting, an extensive search engine, a theme-based interface, user authentication, and code/category ownership privileges.
Enhancements:
- Fixed bug in snippet.php and input.php that stripped slashes from snippet if magic_quotes_gpc was enabled in the php.ini.
- Added another link for "ENTER CODE" in the category bar below the snippet listings. (Just to make it easier to find.)
- Added option in config.php to specify allowable html tags for form fields other than the actual snippet (which allows all html tags by default).
- Modified search.php to include author name/email and language when searching. Now also presents snippet category with search results.
- Fixed bug in category deletion that leaves subcategories and snippets orphaned. Category deletion is now recursive in deleting subcategories and snippets, provided user is either an admin or owns all subordinate items.
- Fixed http script injection vulnerability within several files. Thanks to Yao-Wen (Wayne) Huang for pointing them out.
- Tabs are now preserved within code snippets.
- Added functionality for importing / exportingcategories and snippets. Currently exports in CSV format.