fd
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 25
FDMS-3 Ripper
FDMS-3 Ripper is a Perl program for extracting the tracks from the FDMS-3 filesystem. more>>
FDMS-3 Ripper is a Perl program for extracting the tracks from the FDMS-3 filesystem. I recently bought a Fostex FD-8 multitrack hard disk recorder for recording music. It works great, but I was disappointed to discover that, although it uses a standard external SCSI hard disk, there was no way to "rip" the recorded tracks from the hard drive to my PC over the SCSI port. The alternatives were to use the analog-out to re-record each track using my soundcard (resulting in loss of quality and loss of synch between tracks), or buying a $500 ADAT card for my PC.
I decided that I would try to figure out a way to rip the music directly over the SCSI port. The FD-8 uses a proprietary Fostex filesystem, FDMS-3. I decided to hook it up to my PC and probed the drive. I was able to figure out the basic layout of the filesystem pretty quickly. Note: this is designed to hard disks formatted in the FDMS-3 "Mastering" mode, which stores the audio data in uncompressed format.
In order to use the program, you will need to take the hard disk that has the FDMS-3 filesystem on it and hook it up to your PC (mine is a SCSI drive -- dont know if this will work with one of the internal IDE drives you can hook up to the FD-8). Make sure that Linux can see the drive (dont try to mount it, though!). You might want to have a look at SCSI-2.4-HOWTO to get the drive recognized. My external hard disk is located at "/dev/sda", but yours could end up elsewhere.
Next, you need to make sure you have the following on your system: perl, sox and fileutils (for the "dd" utility). Security Warning Unfortunately, this program presents significant security issues, so be careful with it. The script needs to be able to access the hard disk directly, so you can either run it as root (not safe), or change the permissons for the hard disk device (in my case, "/dev/sda"). Run the program with "./fdms3rip /dev/sda" (substituting the actual location of your hard disk).
This will list all of the programs present on the hard disk. Then, run it again with the number of the program you want to fetch off the hard disk: "./fdms3rip /dev/sda 5" to get all of the recorded tracks for program number 5. After waiting a bit, you should now have a bunch of WAV files on your Linux machine. Warning This program will create and erase files with the names "dir" and "header" in the directory it is run from. It would be best to run this program from a clean directory, just to make sure there are no problems.
<<lessI decided that I would try to figure out a way to rip the music directly over the SCSI port. The FD-8 uses a proprietary Fostex filesystem, FDMS-3. I decided to hook it up to my PC and probed the drive. I was able to figure out the basic layout of the filesystem pretty quickly. Note: this is designed to hard disks formatted in the FDMS-3 "Mastering" mode, which stores the audio data in uncompressed format.
In order to use the program, you will need to take the hard disk that has the FDMS-3 filesystem on it and hook it up to your PC (mine is a SCSI drive -- dont know if this will work with one of the internal IDE drives you can hook up to the FD-8). Make sure that Linux can see the drive (dont try to mount it, though!). You might want to have a look at SCSI-2.4-HOWTO to get the drive recognized. My external hard disk is located at "/dev/sda", but yours could end up elsewhere.
Next, you need to make sure you have the following on your system: perl, sox and fileutils (for the "dd" utility). Security Warning Unfortunately, this program presents significant security issues, so be careful with it. The script needs to be able to access the hard disk directly, so you can either run it as root (not safe), or change the permissons for the hard disk device (in my case, "/dev/sda"). Run the program with "./fdms3rip /dev/sda" (substituting the actual location of your hard disk).
This will list all of the programs present on the hard disk. Then, run it again with the number of the program you want to fetch off the hard disk: "./fdms3rip /dev/sda 5" to get all of the recorded tracks for program number 5. After waiting a bit, you should now have a bunch of WAV files on your Linux machine. Warning This program will create and erase files with the names "dir" and "header" in the directory it is run from. It would be best to run this program from a clean directory, just to make sure there are no problems.
Download (0.005MB)
Added: 2006-07-21 License: GPL (GNU General Public License) Price:
692 downloads
FDMS3-FS 0.2.2
FDMS3-FS is a FUSE filesystem driver for the fostex FDMS-3 as used by the various fostex digital multitrackers. more>>
FDMS3-FS is a FUSE filesystem driver for the fostex FDMS-3 as used by the various fostex digital multitrackers, such as the FD-4, FD-8.
This driver presents the FDMS filesystem as a series of directories - one for each program (song) on the disk:
/mnt/p000-song1
/mnt/p001-song2
/mnt/p002-anotherone
...
Each directory contains a number of .WAV files - one for each track:
/mnt/p001-song2/track-0.wav
/mnt/p001-song2/track-1.wav
...
These .wav files can then be played/mixed/ripped to disk as you want.
Usage
Step 1 - Image the hard disk (optional)
I suggest taking an image of the hard disk, rather than working with the original. Having said this, I see no reason why it would cause any problems, since no write operations are attempted. You can take an image like this:
dd if=/dev/hdd of=fostex-image.dd bs=512
This WILL take some time!
Step 2 - Mount the filesystem
./fdmsfs fostex-image.dd /mnt
If this fails, you probably have a problem with FUSE. Please check the fuse website for more help. If you are sure its not a fuse problem, please let me know!
Step 3 - Use the .WAVs
ls /mnt
should produce a list of the available programs.
You can obviously copy the wavs somewhere else, encode them, import them into something like cubase/soundgarden or whatever. If you just want to play a song, I suggest using Audacity, which can load all the tracks for a partiular program, and play them together or mix them down.
Enhancements:
- This release adds 24-bit audio support, which means the D2424 is now supported.
- It also adds some sanity checking code that makes working with partial images a little easier.
<<lessThis driver presents the FDMS filesystem as a series of directories - one for each program (song) on the disk:
/mnt/p000-song1
/mnt/p001-song2
/mnt/p002-anotherone
...
Each directory contains a number of .WAV files - one for each track:
/mnt/p001-song2/track-0.wav
/mnt/p001-song2/track-1.wav
...
These .wav files can then be played/mixed/ripped to disk as you want.
Usage
Step 1 - Image the hard disk (optional)
I suggest taking an image of the hard disk, rather than working with the original. Having said this, I see no reason why it would cause any problems, since no write operations are attempted. You can take an image like this:
dd if=/dev/hdd of=fostex-image.dd bs=512
This WILL take some time!
Step 2 - Mount the filesystem
./fdmsfs fostex-image.dd /mnt
If this fails, you probably have a problem with FUSE. Please check the fuse website for more help. If you are sure its not a fuse problem, please let me know!
Step 3 - Use the .WAVs
ls /mnt
should produce a list of the available programs.
You can obviously copy the wavs somewhere else, encode them, import them into something like cubase/soundgarden or whatever. If you just want to play a song, I suggest using Audacity, which can load all the tracks for a partiular program, and play them together or mix them down.
Enhancements:
- This release adds 24-bit audio support, which means the D2424 is now supported.
- It also adds some sanity checking code that makes working with partial images a little easier.
Download (0.004MB)
Added: 2007-05-21 License: GPL (GNU General Public License) Price:
891 downloads
FARnodes 1.0
FARnodes is a protocol simulation and execution environment. more>>
FARnodes is a protocol simulation and execution environment. FARnodes project comes with a command-line frontend, a protocol code distribution manager, and a statistical analyser based on PyKDE.
Example algorithms like Consensus and several other small tools and a big chunk of documentation make this a suitable entry-level software for people who have some interest in this (somewhat academic) area.
Main features:
- High portability and easy extensibility of the framework due to a pure Python implementation.
- Protocols can assume either fully synchronous or asynchronous systems, or one of FAR (Finite Average Response times) or PS (Partial Synchrony).
- Channels can exhibit unreliable or stubborn behaviour.
- Failure detectors include EA-FD and PS-FD, both eventually perfect, but others can be added.
- Simulations can expect a virtual timer and can be saved and reloaded in many cases.
- Tools for remote execution and graphical data analysis.
<<lessExample algorithms like Consensus and several other small tools and a big chunk of documentation make this a suitable entry-level software for people who have some interest in this (somewhat academic) area.
Main features:
- High portability and easy extensibility of the framework due to a pure Python implementation.
- Protocols can assume either fully synchronous or asynchronous systems, or one of FAR (Finite Average Response times) or PS (Partial Synchrony).
- Channels can exhibit unreliable or stubborn behaviour.
- Failure detectors include EA-FD and PS-FD, both eventually perfect, but others can be added.
- Simulations can expect a virtual timer and can be saved and reloaded in many cases.
- Tools for remote execution and graphical data analysis.
Download (0.77MB)
Added: 2006-01-13 License: GPL (GNU General Public License) Price:
1379 downloads
di 4.11
di Displays usage information on mounted filesystems. more>>
di Displays usage information on mounted filesystems. Block values are reported in megabytes (1024k bytes) by default, but may be changed. If file is specified, the usage infor-mation for the partition on which file is located is printed.
Unless the -a flag is specified, certain mounted filesystems will not normally be displayed.
Filesystems that have a total block count of 0 will not be displayed.
Filesystems that have a mount option of ignore set will not be displayed.
Filesystems that are automounted, and are duplicates of an existing filesystem are not displayed. (May not work on all systems).
mi Displays the mounted filesystem information.
Several switches may be specified to control the output of di and mi:
-A Print all fields (used for debugging). Mount points and special device names are printed at full width. The -a flag is set.
-a Prints all mounted devices (normally, those with 0 total blocks are not printed - e.g. /dev/proc, /dev/fd).
-b block-size
Change the base block size from 1024 (default) to the size specified. block-size may be one of: k - 1024 bytes, d - 1000 bytes, or a specific size.
-d display-size
Display the blocks in units specified by display-size. display-size may be one of: 512 - POSIX, k - kilobytes, m - megabytes, g - gigabytes, t - terabytes, P - petabytes, E - exabytes, Z - zettabytes, Y - yottabytes, h - Scaled alternative 1, H - Scaled alternative 2, or a specific value to use as the block size.
Block display sizes greater than 1024 bytes are displayed with a precision of one decimal place after the radix.
The Scaled alternatives scale the sizes displayed and appends a suffix (e.g. 48.0k, 3.4M).
With scaled alternative 1, sizes within a line may scale to different units.
Scaled alternative 2 scales all the sizes in each individual line to the same unit size (the largest needed).
-f format
Use the specified format string format. Format strings are described below.
-F include-fstype-list
An alias for -I. See below.
-g Display sizes in gigabytes. An alias for -dg.
-h Display partition sizes in scaled alternative 1 format.
An alias for -dh.
-H Display partition sizes in scaled alternative 2 format.
An alias for -dH.
-I include-fstype-list
Include only the file system types listed in include-fstyp-list. The list is a comma separated list of file system types. e.g. -I nfs,rfs
-i exclude-fstype-list
An alias for -x. See below.
-k Display sizes in Kbytes. An alias for -dk.
-l Display only local file systems. This option is not fully implemented for all systems as of version 1.17.
-m Display sizes in megabytes. An alias for -dm.
-n Do not print a header line above the list of file systems. Useful when parsing the output of di.
-P Display partition sizes in POSIX 512 byte format An alias for -d512.
-s sort-type
Use sort-type to sort the output. The output of di is normally sorted by name. The output may be left unsorted (-s n command line switch) i.e. as it appears in the mount table or may be sorted by the special device name (-s s command line switch). If the -s r command line switch is used, the sort order will be reversed. If file is specified on the command line, no sorting is done.
-t Print a totals line below the list of file systems. Memory filesystems (tmpfs, memfs) and read-only filesystems are not added to the totals.
-w block-width
Set the print width for block values. Default is eight.
-W inode-width
Set the print width for inode values. Default is seven.
-x exclude-fstype-list
Exclude the file system types listed in exclude-fstyp-list. The list is a comma separated list of file system types. e.g. -x nfs,rfs
-X level
Set the programs debugging level to debug-level.
Enhancements:
- This release fixes a minor bug for: di -sn -t (present only in version 4.10).
- Global variables have been moved into local structures.
- Sorting by filesystem type has been added.
<<lessUnless the -a flag is specified, certain mounted filesystems will not normally be displayed.
Filesystems that have a total block count of 0 will not be displayed.
Filesystems that have a mount option of ignore set will not be displayed.
Filesystems that are automounted, and are duplicates of an existing filesystem are not displayed. (May not work on all systems).
mi Displays the mounted filesystem information.
Several switches may be specified to control the output of di and mi:
-A Print all fields (used for debugging). Mount points and special device names are printed at full width. The -a flag is set.
-a Prints all mounted devices (normally, those with 0 total blocks are not printed - e.g. /dev/proc, /dev/fd).
-b block-size
Change the base block size from 1024 (default) to the size specified. block-size may be one of: k - 1024 bytes, d - 1000 bytes, or a specific size.
-d display-size
Display the blocks in units specified by display-size. display-size may be one of: 512 - POSIX, k - kilobytes, m - megabytes, g - gigabytes, t - terabytes, P - petabytes, E - exabytes, Z - zettabytes, Y - yottabytes, h - Scaled alternative 1, H - Scaled alternative 2, or a specific value to use as the block size.
Block display sizes greater than 1024 bytes are displayed with a precision of one decimal place after the radix.
The Scaled alternatives scale the sizes displayed and appends a suffix (e.g. 48.0k, 3.4M).
With scaled alternative 1, sizes within a line may scale to different units.
Scaled alternative 2 scales all the sizes in each individual line to the same unit size (the largest needed).
-f format
Use the specified format string format. Format strings are described below.
-F include-fstype-list
An alias for -I. See below.
-g Display sizes in gigabytes. An alias for -dg.
-h Display partition sizes in scaled alternative 1 format.
An alias for -dh.
-H Display partition sizes in scaled alternative 2 format.
An alias for -dH.
-I include-fstype-list
Include only the file system types listed in include-fstyp-list. The list is a comma separated list of file system types. e.g. -I nfs,rfs
-i exclude-fstype-list
An alias for -x. See below.
-k Display sizes in Kbytes. An alias for -dk.
-l Display only local file systems. This option is not fully implemented for all systems as of version 1.17.
-m Display sizes in megabytes. An alias for -dm.
-n Do not print a header line above the list of file systems. Useful when parsing the output of di.
-P Display partition sizes in POSIX 512 byte format An alias for -d512.
-s sort-type
Use sort-type to sort the output. The output of di is normally sorted by name. The output may be left unsorted (-s n command line switch) i.e. as it appears in the mount table or may be sorted by the special device name (-s s command line switch). If the -s r command line switch is used, the sort order will be reversed. If file is specified on the command line, no sorting is done.
-t Print a totals line below the list of file systems. Memory filesystems (tmpfs, memfs) and read-only filesystems are not added to the totals.
-w block-width
Set the print width for block values. Default is eight.
-W inode-width
Set the print width for inode values. Default is seven.
-x exclude-fstype-list
Exclude the file system types listed in exclude-fstyp-list. The list is a comma separated list of file system types. e.g. -x nfs,rfs
-X level
Set the programs debugging level to debug-level.
Enhancements:
- This release fixes a minor bug for: di -sn -t (present only in version 4.10).
- Global variables have been moved into local structures.
- Sorting by filesystem type has been added.
Download (0.062MB)
Added: 2007-06-02 License: zlib/libpng License Price:
877 downloads
v9fs 2.0.3
v9fs is a 9P2000 resource-sharing protocol implementation for Linux 2.6. more>>
v9fs provides a Plan 9 9P2000 resource sharing protocol for the Linux 2.6 kernel. This can be used to share files, devices, /proc, /sys, etc.
It also works with Plan 9 file servers, and can be used to mount synthetic file systems from Plan 9 applications (see the plan9port project).
Includes kernel modules for Linux 2.4.x and 2.6.x kernels.
Enhancements:
- More responses were made to LKML comments.
- Fixes were made to transport.
- An fd transport method was added.
- This release was fully merged with Linux 2.6.13.
<<lessIt also works with Plan 9 file servers, and can be used to mount synthetic file systems from Plan 9 applications (see the plan9port project).
Includes kernel modules for Linux 2.4.x and 2.6.x kernels.
Enhancements:
- More responses were made to LKML comments.
- Fixes were made to transport.
- An fd transport method was added.
- This release was fully merged with Linux 2.6.13.
Download (0.043MB)
Added: 2005-08-30 License: GPL (GNU General Public License) Price:
1515 downloads
radare 0.8
radare is a toolchain that aims to create a complete set of utilities for handling binary files from the command line. more>>
radare is a toolchain that aims to create a complete set of utilities for handling binary files from the command line. The project is mainly an hexadecimal editor for the command line but with advanced features.
There are extensions for debugging processes on x86-32 and ARM, libusb and fd sniffers, binary diffing utilities, base format conversions, generating graphs of a program, A cross-platform disassembler as an objdump frontend, and more.
Enhancements:
- A new search engine. I/O plugin layers (debugging, Haret, and POSIX). Debugging on NetBSD.
- Arguments to the debugged process (radare "dbg:///bin/ls /usr").
- Base address (B command). xc now can convert from stdin binary data to hex pairs.
- Date format string and filetime (NTFS) support.
- Non-readline interface fixes (more orthogonalized).
- Wide-char support (reading and writing 00 filled strings).
- Fixes in the visual mode.
- The debugger can backtrace on Linux/x86 (needs more work).
- New xor/xorpair hashing algorithms for hasher.
<<lessThere are extensions for debugging processes on x86-32 and ARM, libusb and fd sniffers, binary diffing utilities, base format conversions, generating graphs of a program, A cross-platform disassembler as an objdump frontend, and more.
Enhancements:
- A new search engine. I/O plugin layers (debugging, Haret, and POSIX). Debugging on NetBSD.
- Arguments to the debugged process (radare "dbg:///bin/ls /usr").
- Base address (B command). xc now can convert from stdin binary data to hex pairs.
- Date format string and filetime (NTFS) support.
- Non-readline interface fixes (more orthogonalized).
- Wide-char support (reading and writing 00 filled strings).
- Fixes in the visual mode.
- The debugger can backtrace on Linux/x86 (needs more work).
- New xor/xorpair hashing algorithms for hasher.
Download (0.24MB)
Added: 2007-04-30 License: GPL (GNU General Public License) Price:
907 downloads
mdadm 2.6.3
mdadm is a tool for creating, maintaining, and monitoring Linux more>>
mdadm project is a tool for maintaining, creating, and monitoring Linux "md" device arrays, also known as Software RAID.
These notes apply to 2.6 kernels only and, in some cases, to 2.6.15 or later.
Md arrays can be assembled at boot time using the autodetect functionality
which is triggered by storing components of an array in partitions of type
fd - Linux Raid Autodetect.
They can also be assembled by specifying the component devices in a
kernel parameter such as
md=0,/dev/sda,/dev/sdb
In this case, /dev/md0 will be assembled (because of the 0) from the listed
devices.
These mechanisms, while useful, do not provide complete functionality
and are unlikely to be extended. The preferred way to assemble md arrays at boot time is using mdadm or mdassemble (which is a trimmed-down mdadm).
To assemble an array which contains the root filesystem, mdadm needs to be run before that filesystem is mounted, and so needs to be run from an initial-ram-fs. It is how this can work that is the primary focus of this document.
It should be noted up front that only the array containing the root
filesystem should be assembled from the initramfs. Any other arrays
should be assembled under the control of files on the main filesystem
as this enhanced flexibility and maintainability.
A minimal initramfs for assembling md arrays can be created using 3 files and one directory. These are:
/bin Directory
/bin/mdadm statically linked mdadm binary
/bin/busybox statically linked busybox binary
/bin/sh hard link to /bin/busybox
/init a shell script which call mdadm appropriately.
An example init script is:
#!/bin/sh
echo Auto-assembling boot md array
mkdir /proc
mount -t proc proc /proc
if [ -n "$rootuuid" ]
then arg=--uuid=$rootuuid
elif [ -n "$mdminor" ]
then arg=--super-minor=$mdminor
else arg=--super-minor=0
fi
echo "Using $arg"
mdadm -Acpartitions $arg --auto=part /dev/mda
cd /
mount /dev/mda1 /root || mount /dev/mda /root
umount /proc
cd /root
exec chroot . /sbin/init < /dev/console > /dev/console 2>&1
Enhancements:
- Assorted minor bugs relating to RAID4, verison-1 metadata, option parsing, spare migration, and more were fixed.
<<lessThese notes apply to 2.6 kernels only and, in some cases, to 2.6.15 or later.
Md arrays can be assembled at boot time using the autodetect functionality
which is triggered by storing components of an array in partitions of type
fd - Linux Raid Autodetect.
They can also be assembled by specifying the component devices in a
kernel parameter such as
md=0,/dev/sda,/dev/sdb
In this case, /dev/md0 will be assembled (because of the 0) from the listed
devices.
These mechanisms, while useful, do not provide complete functionality
and are unlikely to be extended. The preferred way to assemble md arrays at boot time is using mdadm or mdassemble (which is a trimmed-down mdadm).
To assemble an array which contains the root filesystem, mdadm needs to be run before that filesystem is mounted, and so needs to be run from an initial-ram-fs. It is how this can work that is the primary focus of this document.
It should be noted up front that only the array containing the root
filesystem should be assembled from the initramfs. Any other arrays
should be assembled under the control of files on the main filesystem
as this enhanced flexibility and maintainability.
A minimal initramfs for assembling md arrays can be created using 3 files and one directory. These are:
/bin Directory
/bin/mdadm statically linked mdadm binary
/bin/busybox statically linked busybox binary
/bin/sh hard link to /bin/busybox
/init a shell script which call mdadm appropriately.
An example init script is:
#!/bin/sh
echo Auto-assembling boot md array
mkdir /proc
mount -t proc proc /proc
if [ -n "$rootuuid" ]
then arg=--uuid=$rootuuid
elif [ -n "$mdminor" ]
then arg=--super-minor=$mdminor
else arg=--super-minor=0
fi
echo "Using $arg"
mdadm -Acpartitions $arg --auto=part /dev/mda
cd /
mount /dev/mda1 /root || mount /dev/mda /root
umount /proc
cd /root
exec chroot . /sbin/init < /dev/console > /dev/console 2>&1
Enhancements:
- Assorted minor bugs relating to RAID4, verison-1 metadata, option parsing, spare migration, and more were fixed.
Download (0.19MB)
Added: 2007-08-20 License: GPL (GNU General Public License) Price:
812 downloads
DB_File 1.815
DB_File is a Perl5 access to Berkeley DB version 1.x. more>>
DB_File is a Perl5 access to Berkeley DB version 1.x.
SYNOPSIS
use DB_File;
[$X =] tie %hash, DB_File, [$filename, $flags, $mode, $DB_HASH] ;
[$X =] tie %hash, DB_File, $filename, $flags, $mode, $DB_BTREE ;
[$X =] tie @array, DB_File, $filename, $flags, $mode, $DB_RECNO ;
$status = $X->del($key [, $flags]) ;
$status = $X->put($key, $value [, $flags]) ;
$status = $X->get($key, $value [, $flags]) ;
$status = $X->seq($key, $value, $flags) ;
$status = $X->sync([$flags]) ;
$status = $X->fd ;
# BTREE only
$count = $X->get_dup($key) ;
@list = $X->get_dup($key) ;
%list = $X->get_dup($key, 1) ;
$status = $X->find_dup($key, $value) ;
$status = $X->del_dup($key, $value) ;
# RECNO only
$a = $X->length;
$a = $X->pop ;
$X->push(list);
$a = $X->shift;
$X->unshift(list);
@r = $X->splice(offset, length, elements);
# DBM Filters
$old_filter = $db->filter_store_key ( sub { ... } ) ;
$old_filter = $db->filter_store_value( sub { ... } ) ;
$old_filter = $db->filter_fetch_key ( sub { ... } ) ;
$old_filter = $db->filter_fetch_value( sub { ... } ) ;
untie %hash ;
untie @array ;
DB_File is a module which allows Perl programs to make use of the facilities provided by Berkeley DB version 1.x (if you have a newer version of DB, see "Using DB_File with Berkeley DB version 2 or greater"). It is assumed that you have a copy of the Berkeley DB manual pages at hand when reading this documentation. The interface defined here mirrors the Berkeley DB interface closely.
Berkeley DB is a C library which provides a consistent interface to a number of database formats. DB_File provides an interface to all three of the database types currently supported by Berkeley DB.
<<lessSYNOPSIS
use DB_File;
[$X =] tie %hash, DB_File, [$filename, $flags, $mode, $DB_HASH] ;
[$X =] tie %hash, DB_File, $filename, $flags, $mode, $DB_BTREE ;
[$X =] tie @array, DB_File, $filename, $flags, $mode, $DB_RECNO ;
$status = $X->del($key [, $flags]) ;
$status = $X->put($key, $value [, $flags]) ;
$status = $X->get($key, $value [, $flags]) ;
$status = $X->seq($key, $value, $flags) ;
$status = $X->sync([$flags]) ;
$status = $X->fd ;
# BTREE only
$count = $X->get_dup($key) ;
@list = $X->get_dup($key) ;
%list = $X->get_dup($key, 1) ;
$status = $X->find_dup($key, $value) ;
$status = $X->del_dup($key, $value) ;
# RECNO only
$a = $X->length;
$a = $X->pop ;
$X->push(list);
$a = $X->shift;
$X->unshift(list);
@r = $X->splice(offset, length, elements);
# DBM Filters
$old_filter = $db->filter_store_key ( sub { ... } ) ;
$old_filter = $db->filter_store_value( sub { ... } ) ;
$old_filter = $db->filter_fetch_key ( sub { ... } ) ;
$old_filter = $db->filter_fetch_value( sub { ... } ) ;
untie %hash ;
untie @array ;
DB_File is a module which allows Perl programs to make use of the facilities provided by Berkeley DB version 1.x (if you have a newer version of DB, see "Using DB_File with Berkeley DB version 2 or greater"). It is assumed that you have a copy of the Berkeley DB manual pages at hand when reading this documentation. The interface defined here mirrors the Berkeley DB interface closely.
Berkeley DB is a C library which provides a consistent interface to a number of database formats. DB_File provides an interface to all three of the database types currently supported by Berkeley DB.
Download (0.085MB)
Added: 2007-08-02 License: Perl Artistic License Price:
498 downloads
HTTP::Handle 0.2
HTTP::Handle is a HTTP Class designed for streaming. more>>
HTTP::Handle is a HTTP Class designed for streaming.
SYNOPSIS
use HTTP::Handle;
my $http = HTTP::Handle->new( uri => "http://www.google.com/" );
$http->connect();
my $fd = $http->fd();
while () {
print "--> $_";
}
The HTTP::Handle module allows you to make HTTP requests and handle the data yourself. The general ideas is that you use this module to make a HTTP request and handle non-header data yourself. I needed such a feature for my mp3 player to listen to icecast streams.
HTTP::Handle->new()
Create a new HTTP::Handle object thingy.
Arguments possible:
url => "http://www.google.com/"
Sets the initial URL to connect to.
follow_redirects => [ 0 | 1 ]
Automatically follow HTTP redirects. This defaults to true (1). Set to 0 to disable this.
http_request => HASHREF
Any thing put in here will be sent as "key: value" in the http request string.
$http->connect()
Connect, send the http request, and process the response headers.
This function returns -1 on failure, undef otherwise. The reason for failure will be printed to STDERR.
$http->fd()
Get the file descriptor (socket) were using to connect.
$http->url( [ url_string ])
Get or set the URL. If a url string is passed, you will change the url that is requested. If no parameter is passed, a URI object will be returned containing the
$http->follow_redirects( [ 0 | 1 ] )
If a value is passed then you will set whether or not we will automatically follow HTTP 302 Redirects. If no value is passed, then we will return whatever the current option is.
Defaults to 1 (will follow redirects).
$http->http_request_string()
Returns a string containing the HTTP request and headers, this is used when
$http->connect() is called.
<<lessSYNOPSIS
use HTTP::Handle;
my $http = HTTP::Handle->new( uri => "http://www.google.com/" );
$http->connect();
my $fd = $http->fd();
while () {
print "--> $_";
}
The HTTP::Handle module allows you to make HTTP requests and handle the data yourself. The general ideas is that you use this module to make a HTTP request and handle non-header data yourself. I needed such a feature for my mp3 player to listen to icecast streams.
HTTP::Handle->new()
Create a new HTTP::Handle object thingy.
Arguments possible:
url => "http://www.google.com/"
Sets the initial URL to connect to.
follow_redirects => [ 0 | 1 ]
Automatically follow HTTP redirects. This defaults to true (1). Set to 0 to disable this.
http_request => HASHREF
Any thing put in here will be sent as "key: value" in the http request string.
$http->connect()
Connect, send the http request, and process the response headers.
This function returns -1 on failure, undef otherwise. The reason for failure will be printed to STDERR.
$http->fd()
Get the file descriptor (socket) were using to connect.
$http->url( [ url_string ])
Get or set the URL. If a url string is passed, you will change the url that is requested. If no parameter is passed, a URI object will be returned containing the
$http->follow_redirects( [ 0 | 1 ] )
If a value is passed then you will set whether or not we will automatically follow HTTP 302 Redirects. If no value is passed, then we will return whatever the current option is.
Defaults to 1 (will follow redirects).
$http->http_request_string()
Returns a string containing the HTTP request and headers, this is used when
$http->connect() is called.
Download (0.005MB)
Added: 2006-11-16 License: Perl Artistic License Price:
1072 downloads
Libnodave 0.1 (Java)
Libnodave is a library to exchange data with Siemens PLCs. more>>
Libnodave is a library to exchange data with Siemens PLCs.
The PLCs of the S7-300 and S7-400 family have a so called MPI (multipoint) interface. This interface is mainly used to program the device, but can also be used to read and write data from and to the PLC. The physical layer of the MPI interface is a two wire line operated with differential voltage like RS422 or RS485.
More than two devices can be connected to that line. The data flow is bidirectional. The baud rate is normally 187.5 kBaud, but you may select others. Because no standard PC hardware can do these baud rates, you cannot use a simple signal level converter. You will allways need an adapter from Siemens or another vendor. These adapters are "intelligent" devices built around some microprocessor. They talk MPI to the PLC and something else to your PC. The rest of this document is about this "something else".
Usage:
1. Initialize the serial interface:fd=setPort("/dev/ttyS1","19200",O)
2. Initialize a daveInterfacedi = daveNewInterface(fd,"Some name")
3. Initialize the MPI adaptererror=daveInitAdapter(di))
4. Initialize a daveConnectiondc = daveNewConnection(di,2);
5. Connect to a PLC with a given MPI addressdaveConnectPLC(dc);
6. Exchange data with that PLCdaveReadBytes(dc,daveFlags,0,0,24);
daveWriteBytes(dc,daveFlags,0,0,24,buf);
7. Disconnect from the PLCdaveDisconnectPLC(dc);
8. Disconnect from the Adapter daveDisconnectAdapter(di);
<<lessThe PLCs of the S7-300 and S7-400 family have a so called MPI (multipoint) interface. This interface is mainly used to program the device, but can also be used to read and write data from and to the PLC. The physical layer of the MPI interface is a two wire line operated with differential voltage like RS422 or RS485.
More than two devices can be connected to that line. The data flow is bidirectional. The baud rate is normally 187.5 kBaud, but you may select others. Because no standard PC hardware can do these baud rates, you cannot use a simple signal level converter. You will allways need an adapter from Siemens or another vendor. These adapters are "intelligent" devices built around some microprocessor. They talk MPI to the PLC and something else to your PC. The rest of this document is about this "something else".
Usage:
1. Initialize the serial interface:fd=setPort("/dev/ttyS1","19200",O)
2. Initialize a daveInterfacedi = daveNewInterface(fd,"Some name")
3. Initialize the MPI adaptererror=daveInitAdapter(di))
4. Initialize a daveConnectiondc = daveNewConnection(di,2);
5. Connect to a PLC with a given MPI addressdaveConnectPLC(dc);
6. Exchange data with that PLCdaveReadBytes(dc,daveFlags,0,0,24);
daveWriteBytes(dc,daveFlags,0,0,24,buf);
7. Disconnect from the PLCdaveDisconnectPLC(dc);
8. Disconnect from the Adapter daveDisconnectAdapter(di);
Download (0.14MB)
Added: 2007-01-26 License: GPL (GNU General Public License) Price:
1006 downloads
Module::Versions 0.02
Module::Versions is a Perl module to handle versions of loaded modules with flexible result interface. more>>
Module::Versions is a Perl module to handle versions of loaded modules with flexible result interface.
SYNOPSIS
use Module::Versions;
# Simple Interface
list Module::Versions; # prints formatted results to STDOUT
Module::Versions->list; # prints formatted results to STDOUT
# Shortcuts
$vers = get Module::Versions; # retrieves loaded modules
$vers = Module::Versions->get; # retrieves loaded modules
$array = Module::Versions->ARRAY; # returns array with version infos
$hash = Module::Versions->HASH; # returns hash with version infos
$list = Module::Versions->SCALAR; # returns text list with version infos
$csv = Module::Versions->CSV; # returns csv list with version infos
$xml = Module::Versions->XML; # returns xml struct with version infos
$xsd = Module::Versions->XSD; # returns xml schema of version infos
$dtd = Module::Versions->DTD; # returns DTD of version infos
# Individual Parameters
$vers = Module::Versions # retrieves mods and vars as defined
->new($mods,$vars)
->get($criteria);
$vers->list($fd,$mask); # prints formatted results to file
$vers->list($fd,$preform); # prints preformatted results to file
$vers->list($fd,&cb); # prints serialied results as handled
# in callback routine
$vers->data(&cb); # returns transformed results as
# defined in callback routine
# Individual formatted output
list Module::Versions(*LOG, %5d %1s %-20s %10s %-16s);
# prints individually formatted
# results to LOG
list Module::Versions(*DBIMPORT, %s|%s|%s);
# prints individually formatted
# results to Database Import file
list Module::Versions(*FD, SCALAR);# prints text list results to file
list Module::Versions(*FD, CSV); # prints csv list results to file
list Module::Versions(*FD, XML); # prints xml struct results to file
list Module::Versions(*FD, XSD); # prints xml schema to file
list Module::Versions(*FD, DTD); # prints DTD to file
list Module::Versions(*FD, ARRAY); # prints serialized results to file
list Module::Versions(*FD, HASH); # prints serialized results to file
Module::Versions->list(*LOG); # prints formatted results to LOG
# Pretty Compact
Module::Versions->list # prints formatted results on STDOUT
->list(*XML,XML); # prints xml struct results to XML file
Module::Versions->list # prints formatted results on STDOUT
->list(*XSD,XSD) # prints xml schema to XSD file
->list(*XML,XML); # prints xml struct results to XML file
Module::Versions->list # prints formatted results on STDOUT
->list(*DTD,DTD) # prints DTD to DTD file
->list(*XML,XML); # prints xml struct results to XML file
Module::Versions handles versions of loaded modules with a flexible result interface. The main goal is to get as much version informations as possible about a module or module list with a simple call interface and an absolutely flexible result interface. Module::Versions handles *loaded* and *loadable* modules.
The motivation for writing this module was the need for better support facilities to get informations about the used modules and versions in the productivity environment. Module::Versions allows shipping applications basically with something like a -version option (See Getopt::Long) but with expanded functions.
Module::Versions tries to read the loaded/loadable modules $VERSION. For extended purposes any private project version variables can be fetched ($_VERSION, $version, $REV, etc.).
Module::Versions has a flexible result interface to satisfy different needs: results can be lists and data structures with different formats - pre-formed ARRAY, HASH, SCALAR, CSV, XML/XSD/DTD and a full flexible user callback interface.
It is for example very simple to print a good formatted version list to the console and save a version.xml file (in conjunction with an xsd-schema) at the same time with an absolutely minimum of coding (SYNOPSIS, Pretty Compact) .
Module::Versions tries to load version.pm to support Perl 5.10.0s $VERSION formatting.
<<lessSYNOPSIS
use Module::Versions;
# Simple Interface
list Module::Versions; # prints formatted results to STDOUT
Module::Versions->list; # prints formatted results to STDOUT
# Shortcuts
$vers = get Module::Versions; # retrieves loaded modules
$vers = Module::Versions->get; # retrieves loaded modules
$array = Module::Versions->ARRAY; # returns array with version infos
$hash = Module::Versions->HASH; # returns hash with version infos
$list = Module::Versions->SCALAR; # returns text list with version infos
$csv = Module::Versions->CSV; # returns csv list with version infos
$xml = Module::Versions->XML; # returns xml struct with version infos
$xsd = Module::Versions->XSD; # returns xml schema of version infos
$dtd = Module::Versions->DTD; # returns DTD of version infos
# Individual Parameters
$vers = Module::Versions # retrieves mods and vars as defined
->new($mods,$vars)
->get($criteria);
$vers->list($fd,$mask); # prints formatted results to file
$vers->list($fd,$preform); # prints preformatted results to file
$vers->list($fd,&cb); # prints serialied results as handled
# in callback routine
$vers->data(&cb); # returns transformed results as
# defined in callback routine
# Individual formatted output
list Module::Versions(*LOG, %5d %1s %-20s %10s %-16s);
# prints individually formatted
# results to LOG
list Module::Versions(*DBIMPORT, %s|%s|%s);
# prints individually formatted
# results to Database Import file
list Module::Versions(*FD, SCALAR);# prints text list results to file
list Module::Versions(*FD, CSV); # prints csv list results to file
list Module::Versions(*FD, XML); # prints xml struct results to file
list Module::Versions(*FD, XSD); # prints xml schema to file
list Module::Versions(*FD, DTD); # prints DTD to file
list Module::Versions(*FD, ARRAY); # prints serialized results to file
list Module::Versions(*FD, HASH); # prints serialized results to file
Module::Versions->list(*LOG); # prints formatted results to LOG
# Pretty Compact
Module::Versions->list # prints formatted results on STDOUT
->list(*XML,XML); # prints xml struct results to XML file
Module::Versions->list # prints formatted results on STDOUT
->list(*XSD,XSD) # prints xml schema to XSD file
->list(*XML,XML); # prints xml struct results to XML file
Module::Versions->list # prints formatted results on STDOUT
->list(*DTD,DTD) # prints DTD to DTD file
->list(*XML,XML); # prints xml struct results to XML file
Module::Versions handles versions of loaded modules with a flexible result interface. The main goal is to get as much version informations as possible about a module or module list with a simple call interface and an absolutely flexible result interface. Module::Versions handles *loaded* and *loadable* modules.
The motivation for writing this module was the need for better support facilities to get informations about the used modules and versions in the productivity environment. Module::Versions allows shipping applications basically with something like a -version option (See Getopt::Long) but with expanded functions.
Module::Versions tries to read the loaded/loadable modules $VERSION. For extended purposes any private project version variables can be fetched ($_VERSION, $version, $REV, etc.).
Module::Versions has a flexible result interface to satisfy different needs: results can be lists and data structures with different formats - pre-formed ARRAY, HASH, SCALAR, CSV, XML/XSD/DTD and a full flexible user callback interface.
It is for example very simple to print a good formatted version list to the console and save a version.xml file (in conjunction with an xsd-schema) at the same time with an absolutely minimum of coding (SYNOPSIS, Pretty Compact) .
Module::Versions tries to load version.pm to support Perl 5.10.0s $VERSION formatting.
Download (0.021MB)
Added: 2007-05-03 License: Perl Artistic License Price:
904 downloads
Linux::Inotify2 1.01
Linux::Inotify2 is a scalable directory/file change notification. more>>
Linux::Inotify2 is a scalable directory/file change notification.
SYNOPSIS
Callback interface
use Linux::Inotify2;
# create a new object
my $inotify = new Linux::Inotify2
or die "Unable to create new inotify object: $!";
# for Event:
Event->io (fd =>$inotify->fileno, poll => r, cb => sub { $inotify->poll });
# for Glib:
add_watch Glib::IO $inotify->fileno, in => sub { $inotify->poll };
# manually:
1 while $inotify->poll;
# add watchers
$inotify->watch ("/etc/passwd", IN_ACCESS, sub {
my $e = shift;
my $name = $e->fullname;
print "$name was accessedn" if $e->IN_ACCESS;
print "$name is no longer mountedn" if $e->IN_UNMOUNT;
print "$name is gonen" if $e->IN_IGNORED;
print "events for $name have been lostn" if $e->IN_Q_OVERFLOW;
# cancel this watcher: remove no further events
$e->w->cancel;
});
Streaming Interface
use Linux::Inotify2 ;
# create a new object
my $inotify = new Linux::Inotify2
or die "Unable to create new inotify object: $!" ;
# create watch
$inotify->watch ("/etc/passwd", IN_ACCESS)
or die "watch creation failed" ;
while () {
my @events = $inotify->read;
unless (@events > 0) {
print "read error: $!";
last ;
}
printf "maskt%dn", $_->mask foreach @events ;
}
This module implements an interface to the Linux 2.6.13 and later Inotify file/directory change notification sytem.
It has a number of advantages over the Linux::Inotify module:
- it is portable (Linux::Inotify only works on x86)
- the equivalent of fullname works correctly
- it is better documented
- it has callback-style interface, which is better suited for
integration.
<<lessSYNOPSIS
Callback interface
use Linux::Inotify2;
# create a new object
my $inotify = new Linux::Inotify2
or die "Unable to create new inotify object: $!";
# for Event:
Event->io (fd =>$inotify->fileno, poll => r, cb => sub { $inotify->poll });
# for Glib:
add_watch Glib::IO $inotify->fileno, in => sub { $inotify->poll };
# manually:
1 while $inotify->poll;
# add watchers
$inotify->watch ("/etc/passwd", IN_ACCESS, sub {
my $e = shift;
my $name = $e->fullname;
print "$name was accessedn" if $e->IN_ACCESS;
print "$name is no longer mountedn" if $e->IN_UNMOUNT;
print "$name is gonen" if $e->IN_IGNORED;
print "events for $name have been lostn" if $e->IN_Q_OVERFLOW;
# cancel this watcher: remove no further events
$e->w->cancel;
});
Streaming Interface
use Linux::Inotify2 ;
# create a new object
my $inotify = new Linux::Inotify2
or die "Unable to create new inotify object: $!" ;
# create watch
$inotify->watch ("/etc/passwd", IN_ACCESS)
or die "watch creation failed" ;
while () {
my @events = $inotify->read;
unless (@events > 0) {
print "read error: $!";
last ;
}
printf "maskt%dn", $_->mask foreach @events ;
}
This module implements an interface to the Linux 2.6.13 and later Inotify file/directory change notification sytem.
It has a number of advantages over the Linux::Inotify module:
- it is portable (Linux::Inotify only works on x86)
- the equivalent of fullname works correctly
- it is better documented
- it has callback-style interface, which is better suited for
integration.
Download (0.009MB)
Added: 2006-09-06 License: Perl Artistic License Price:
1145 downloads
Filesys::Statvfs 0.82
Filesys::Statvfs is a Perl extension for statvfs() and fstatvfs(). more>>
Filesys::Statvfs is a Perl extension for statvfs() and fstatvfs().
SYNOPSIS
use Filesys::Statvfs;
my($bsize, $frsize, $blocks, $bfree, $bavail,
$files, $ffree, $favail, $flag, $namemax) = statvfs("/tmp");
#### Pass an open filehandle. Verify that fileno() returns a defined
#### value. If you pass undef to fstatvfs you will get unexpected results
my $fd = fileno(FILE_HANDLE);
if(defined($fd)) {
($bsize, $frsize, $blocks, $bfree, $bavail,
$files, $ffree, $favail, $flag, $namemax) = fstatvfs($fd);
}
Interface for statvfs() and fstatvfs()
Unless you need access to the bsize, flag, and namemax values, you should probably look at using Filesys::DfPortable or Filesys::Df instead. They will generally provide you with more functionality and portability.
The module should work with all flavors of Unix that implement the statvfs() and fstatvfs() calls. This would include Linux, *BSD, HP-UX, AIX, Solaris, Mac OS X, Irix, Cygwin, etc ...
The statvfs() and fstatvfs() functions will return a list of values, or will return undef and set $! if there was an error.
The values returned are described in the statvfs/fstatvfs header or the statvfs()/fstatvfs() man page.
The module assumes that if you have statvfs(), fstatvfs() will also be available.
<<lessSYNOPSIS
use Filesys::Statvfs;
my($bsize, $frsize, $blocks, $bfree, $bavail,
$files, $ffree, $favail, $flag, $namemax) = statvfs("/tmp");
#### Pass an open filehandle. Verify that fileno() returns a defined
#### value. If you pass undef to fstatvfs you will get unexpected results
my $fd = fileno(FILE_HANDLE);
if(defined($fd)) {
($bsize, $frsize, $blocks, $bfree, $bavail,
$files, $ffree, $favail, $flag, $namemax) = fstatvfs($fd);
}
Interface for statvfs() and fstatvfs()
Unless you need access to the bsize, flag, and namemax values, you should probably look at using Filesys::DfPortable or Filesys::Df instead. They will generally provide you with more functionality and portability.
The module should work with all flavors of Unix that implement the statvfs() and fstatvfs() calls. This would include Linux, *BSD, HP-UX, AIX, Solaris, Mac OS X, Irix, Cygwin, etc ...
The statvfs() and fstatvfs() functions will return a list of values, or will return undef and set $! if there was an error.
The values returned are described in the statvfs/fstatvfs header or the statvfs()/fstatvfs() man page.
The module assumes that if you have statvfs(), fstatvfs() will also be available.
Download (0.004MB)
Added: 2007-04-25 License: Perl Artistic License Price:
912 downloads
Filesys::SmbClient 3.1
Filesys::SmbClient is a Perl interface for access Samba filesystem with libsmclient.so more>>
Filesys::SmbClient is a Perl interface for access Samba filesystem with libsmclient.so
SYNOPSIS
use POSIX;
use Filesys::SmbClient;
my $smb = new Filesys::SmbClient(username => "alian",
password => "speed",
workgroup => "alian",
debug => 10);
# Read a file
my $fd = $smb->open("smb://jupiter/doc/general.css", 0666);
while (defined(my $l= $smb->read($fd,50))) {print $l; }
$smb->close(fd);
# ...
See section EXAMPLE for others scripts.
Provide interface to access routine defined in libsmbclient.so provided with Samba.
Since 3.0 release of this package, you need a least samba-3.0.2. For prior release of Samba, use Filesys::SmbClient version 1.x.
For old and 2.x release, this library is available on Samba source, but is not build by default. Do "make bin/libsmbclient.so" in sources directory of Samba to build this libraries. Then copy source/include/libsmbclient.h to /usr/local/samba/include and source/bin/libsmbclient.so to /usr/local/samba/lib before install this module.
If you want to use filehandle with this module, you need Perl 5.6 or later.
When a path is used, his scheme is :
sm
b://server/share/rep/doc
<<lessSYNOPSIS
use POSIX;
use Filesys::SmbClient;
my $smb = new Filesys::SmbClient(username => "alian",
password => "speed",
workgroup => "alian",
debug => 10);
# Read a file
my $fd = $smb->open("smb://jupiter/doc/general.css", 0666);
while (defined(my $l= $smb->read($fd,50))) {print $l; }
$smb->close(fd);
# ...
See section EXAMPLE for others scripts.
Provide interface to access routine defined in libsmbclient.so provided with Samba.
Since 3.0 release of this package, you need a least samba-3.0.2. For prior release of Samba, use Filesys::SmbClient version 1.x.
For old and 2.x release, this library is available on Samba source, but is not build by default. Do "make bin/libsmbclient.so" in sources directory of Samba to build this libraries. Then copy source/include/libsmbclient.h to /usr/local/samba/include and source/bin/libsmbclient.so to /usr/local/samba/lib before install this module.
If you want to use filehandle with this module, you need Perl 5.6 or later.
When a path is used, his scheme is :
sm
b://server/share/rep/doc
Download (0.050MB)
Added: 2007-04-25 License: Perl Artistic License Price:
930 downloads
Sun::Solaris::Ucred 1.1
Sun::Solaris::Ucred is a Perl interface to User Credentials. more>>
Sun::Solaris::Ucred is a Perl interface to User Credentials.
SYNOPSIS
use Sun::Solaris::Ucred qw(:ALL);
This module provides wrappers for the Ucred-related system and library calls.
Functions
ucred_get($pid)
This function returns the credential of the process specified by $pid, if the process exists and the calling process is permitted to obtain the credentials of that process.
getpeerucred($fd)
If $fd is a connected connection oriented TLI endpoint, a connected SOCK_STREAM or SOCK_SEQPKT socket, getpeerucred will return the user credential of the peer at the time the connection was established, if availble.
ucred_geteuid($ucred)
This function returns the effective uid of a user credential, if available.
ucred_getruid($ucred)
This function returns the real uid of a user credential, if available.
ucred_getsuid($ucred)
This function returns the saved uid of a user credential, if available.
ucred_getegid($ucred)
This function returns the effective group of a user credential, if available.
ucred_getrgid($ucred)
This function returns the real group of a user credential, if available.
ucred_getsgid($ucred)
This function returns the saved group of a user credential, if available.
ucred_getgroups($ucred)
This function returns the list of supplemental groups of a user credential, if available. An array of groups is returned in ARRAY context; the number of groups is returned in SCALAR context.
ucred_getprivset($ucred, $which)
This function returns the privilege set specified by $which of a user credential, if available.
ucred_getpflags($ucred, $flags)
This function returns the value of a specific process flag of a user credential, if available.
ucred_getpid($ucred)
This function returns the process id of a user credential, if available.
ucred_getzoneid($ucred)
This function returns the zone id of a user credential, if available.
Exports
By default nothing is exported from this module. The following tags can be used to selectively import constants and functions defined in this module:
:SYSCALLS ucred_get(), getpeerucred()
:LIBCALLS ucred_geteuid(), ucred_getruid(), ucred_getsuid(),
ucred_getegid(), ucred_getrgid(), ucred_getsgid(),
ucred_getgroups(), ucred_getprivset(), ucred_getpflags(),
ucred_getpid(), ucred_getzone()
:CONSTANTS
:VARIABLES %PRIVILEGES, %PRIVSETS
:ALL :SYSCALLS, :LIBCALLS, and :CONSTANTS
<<lessSYNOPSIS
use Sun::Solaris::Ucred qw(:ALL);
This module provides wrappers for the Ucred-related system and library calls.
Functions
ucred_get($pid)
This function returns the credential of the process specified by $pid, if the process exists and the calling process is permitted to obtain the credentials of that process.
getpeerucred($fd)
If $fd is a connected connection oriented TLI endpoint, a connected SOCK_STREAM or SOCK_SEQPKT socket, getpeerucred will return the user credential of the peer at the time the connection was established, if availble.
ucred_geteuid($ucred)
This function returns the effective uid of a user credential, if available.
ucred_getruid($ucred)
This function returns the real uid of a user credential, if available.
ucred_getsuid($ucred)
This function returns the saved uid of a user credential, if available.
ucred_getegid($ucred)
This function returns the effective group of a user credential, if available.
ucred_getrgid($ucred)
This function returns the real group of a user credential, if available.
ucred_getsgid($ucred)
This function returns the saved group of a user credential, if available.
ucred_getgroups($ucred)
This function returns the list of supplemental groups of a user credential, if available. An array of groups is returned in ARRAY context; the number of groups is returned in SCALAR context.
ucred_getprivset($ucred, $which)
This function returns the privilege set specified by $which of a user credential, if available.
ucred_getpflags($ucred, $flags)
This function returns the value of a specific process flag of a user credential, if available.
ucred_getpid($ucred)
This function returns the process id of a user credential, if available.
ucred_getzoneid($ucred)
This function returns the zone id of a user credential, if available.
Exports
By default nothing is exported from this module. The following tags can be used to selectively import constants and functions defined in this module:
:SYSCALLS ucred_get(), getpeerucred()
:LIBCALLS ucred_geteuid(), ucred_getruid(), ucred_getsuid(),
ucred_getegid(), ucred_getrgid(), ucred_getsgid(),
ucred_getgroups(), ucred_getprivset(), ucred_getpflags(),
ucred_getpid(), ucred_getzone()
:CONSTANTS
:VARIABLES %PRIVILEGES, %PRIVSETS
:ALL :SYSCALLS, :LIBCALLS, and :CONSTANTS
Download (0.005MB)
Added: 2007-04-13 License: Perl Artistic License Price:
924 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 fd 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