Alien-Libjio
view release on metacpan or search on metacpan
Legally speaking, this package and its contents are:
Copyright (c) 2011 by Jonathan Yu <jawnsy@cpan.org>.
But this is really just a legal technicality that allows the author to
offer this package under the public domain and also a variety of licensing
options. For all intents and purposes, this is public domain software,
which means you can do whatever you want with it.
The software is provided "AS IS", without warranty of any kind, express or
implied, including but not limited to the warranties of merchantability,
fitness for a particular purpose and noninfringement. In no event shall the
authors or copyright holders be liable for any claim, damages or other
liability, whether in an action of contract, tort or otherwise, arising from,
out of or in connection with the software or the use or other dealings in
the software.
PUBLIC DOMAIN PSEUDO-LICENSE
I, the copyright holder of this package, hereby release the entire contents
therein into the public domain. This applies worldwide, to the extent that
it is permissible by law.
In case this is not legally possible, I grant any entity the right to use
this work for any purpose, without any conditions, unless such conditions
are required by law.
If you so choose, or if you are legally compelled to do so, you may use
this software under the terms of your choice of the following licenses:
1. The MIT/X11 License; or,
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
libjio/libjio/ansi.c
libjio/libjio/autosync.c
libjio/libjio/check.c
libjio/libjio/checksum.c
libjio/libjio/common.c
libjio/libjio/common.h
libjio/libjio/compat.c
libjio/libjio/compat.h
libjio/libjio/doxygen/Doxyfile.base.in
libjio/libjio/doxygen/Doxyfile.internal
libjio/libjio/doxygen/Doxyfile.public
libjio/libjio/doxygen/Makefile
libjio/libjio/doxygen/groups.doxy
libjio/libjio/fiu-local.h
libjio/libjio/jiofsck.c
libjio/libjio/journal.c
libjio/libjio/journal.h
libjio/libjio/libjio.3
libjio/libjio/libjio.h
libjio/libjio/libjio.pc.in
libjio/libjio/trans.c
This archive contains the distribution Alien-Libjio,
version 1.004:
Utility package to install and locate libjio
Legally speaking, this package and its contents are:
Copyright (c) 2011 by Jonathan Yu <jawnsy@cpan.org>.
But this is really just a legal technicality that allows the author to
offer this package under the public domain and also a variety of licensing
options. For all intents and purposes, this is public domain software,
which means you can do whatever you want with it.
The software is provided "AS IS", without warranty of any kind, express or
implied, including but not limited to the warranties of merchantability,
fitness for a particular purpose and noninfringement. In no event shall the
authors or copyright holders be liable for any claim, damages or other
liability, whether in an action of contract, tort or otherwise, arising from,
out of or in connection with the software or the use or other dealings in
the software.
lib/Alien/Libjio.pm view on Meta::CPAN
print 'I found this information using: ', $jio->how, "\n";
}
=head1 ACKNOWLEDGEMENTS
=over
=item *
Special thanks to Alberto Bertogli E<lt>albertito@blitiri.com.arE<gt> for
developing this useful library and for releasing it into the public domain.
=back
=head1 SEE ALSO
L<IO::Journal>, a Perl module that provides an interface to libjio.
L<http://blitiri.com.ar/p/libjio/>, Alberto Bertogli's page about libjio,
which explains the purpose and features of libjio.
lib/Alien/Libjio.pm view on Meta::CPAN
Jonathan Yu <jawnsy@cpan.org>
=head1 COPYRIGHT AND LICENSE
Legally speaking, this package and its contents are:
Copyright (c) 2011 by Jonathan Yu <jawnsy@cpan.org>.
But this is really just a legal technicality that allows the author to
offer this package under the public domain and also a variety of licensing
options. For all intents and purposes, this is public domain software,
which means you can do whatever you want with it.
The software is provided "AS IS", without warranty of any kind, express or
implied, including but not limited to the warranties of merchantability,
fitness for a particular purpose and noninfringement. In no event shall the
authors or copyright holders be liable for any claim, damages or other
liability, whether in an action of contract, tort or otherwise, arising from,
out of or in connection with the software or the use or other dealings in
the software.
libjio/README view on Meta::CPAN
The library guarantees file integrity even after unexpected crashes, never
leaving your files in an inconsistent state.
You can find more detailed documents, including the programmer's guide, in the
doc/ directory, and the manpage in the libjio/ directory.
To see how to install it, please read the INSTALL file.
It is in the public domain, see the LICENSE file for more details.
Comments and patches are always welcome; please send them to
albertito@blitiri.com.ar.
libjio/libjio/doxygen/Doxyfile.public view on Meta::CPAN
@INCLUDE = Doxyfile.base
PROJECT_NAME = "libjio (public)"
OUTPUT_DIRECTORY = doc.public
EXTRACT_ALL = YES
EXTRACT_STATIC = NO
INTERNAL_DOCS = NO
INPUT = ../libjio.h groups.doxy
libjio/libjio/doxygen/Makefile view on Meta::CPAN
ifneq ($(V), 1)
NICE_DOXYGEN = @echo " DOXYGEN $@"; doxygen
else
NICE_DOXYGEN = doxygen
endif
default: all
all: public internal
# $(LIB_VER) must be defined externally if we want the generated docs to
# specify a version number. Usually, this Makefile will be invoked by
# libjio's, which has that variable properly defined.
Doxyfile.base: Doxyfile.base.in
@echo "generating Doxyfile.base"
@cat Doxyfile.base.in | \
sed 's@++VERSION++@$(LIB_VER)@g' \
> Doxyfile.base
public: Doxyfile.base
$(NICE_DOXYGEN) Doxyfile.public
internal: Doxyfile.base
$(NICE_DOXYGEN) Doxyfile.internal
clean:
rm -rf doc.internal doc.public Doxyfile.base
.PHONY: all clean default doxygen internal public
libjio/libjio/fiu-local.h view on Meta::CPAN
/* libfiu - Fault Injection in Userspace
*
* This header, part of libfiu, is meant to be included in your project to
* avoid having libfiu as a mandatory build-time dependency.
*
* You can add it to your project, and #include it instead of fiu.h.
* The real fiu.h will be used only when FIU_ENABLE is defined.
*
* This header, as the rest of libfiu, is in the public domain.
*
* You can find more information about libfiu at
* http://blitiri.com.ar/p/libfiu.
*/
#ifndef _FIU_LOCAL_H
#define _FIU_LOCAL_H
/* Only define the stubs when fiu is disabled, otherwise use the real fiu.h
* header */
libjio/libjio/libjio.h view on Meta::CPAN
* @see jopen()
* @ingroup basic */
#define J_NOROLLBACK 2
/** Use lingering transactions.
*
* @see jopen()
* @ingroup basic */
#define J_LINGER 4
/* Range 8-256 is reserved for future public use */
/** Marks a file as read-only.
*
* For internal use only, automatically set when O_RDONLY is passed to
* jopen().
*
* @internal */
#define J_RDONLY 512
libjio/tests/stress/jiostress view on Meta::CPAN
#
# A range of bytes inside a file, used inside the transactions
#
# Note it can't "remember" the fd as it may change between prepare() and
# verify().
#
class Range:
def __init__(self, fsize, maxlen, lockmgr):
# public
self.start, self.end = randfrange(fsize, maxlen)
self.new_data = None
self.type = 'r'
# private
self.prev_data = None
self.new_data_ctx = None
self.read_buf = None
self.lockmgr = lockmgr
self.locked = False
( run in 0.521 second using v1.01-cache-2.11-cpan-64827b87656 )