BCEL_6_0_RC3/ 0000755 0001750 0001750 00000000000 12522642451 013563 5 ustar sylvestre sylvestre BCEL_6_0_RC3/LICENSE.txt 0000644 0001750 0001750 00000026767 10157772707 015442 0 ustar sylvestre sylvestre /*
* Apache License
* Version 2.0, January 2004
* http://www.apache.org/licenses/
*
* TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
*
* 1. Definitions.
*
* "License" shall mean the terms and conditions for use, reproduction,
* and distribution as defined by Sections 1 through 9 of this document.
*
* "Licensor" shall mean the copyright owner or entity authorized by
* the copyright owner that is granting the License.
*
* "Legal Entity" shall mean the union of the acting entity and all
* other entities that control, are controlled by, or are under common
* control with that entity. For the purposes of this definition,
* "control" means (i) the power, direct or indirect, to cause the
* direction or management of such entity, whether by contract or
* otherwise, or (ii) ownership of fifty percent (50%) or more of the
* outstanding shares, or (iii) beneficial ownership of such entity.
*
* "You" (or "Your") shall mean an individual or Legal Entity
* exercising permissions granted by this License.
*
* "Source" form shall mean the preferred form for making modifications,
* including but not limited to software source code, documentation
* source, and configuration files.
*
* "Object" form shall mean any form resulting from mechanical
* transformation or translation of a Source form, including but
* not limited to compiled object code, generated documentation,
* and conversions to other media types.
*
* "Work" shall mean the work of authorship, whether in Source or
* Object form, made available under the License, as indicated by a
* copyright notice that is included in or attached to the work
* (an example is provided in the Appendix below).
*
* "Derivative Works" shall mean any work, whether in Source or Object
* form, that is based on (or derived from) the Work and for which the
* editorial revisions, annotations, elaborations, or other modifications
* represent, as a whole, an original work of authorship. For the purposes
* of this License, Derivative Works shall not include works that remain
* separable from, or merely link (or bind by name) to the interfaces of,
* the Work and Derivative Works thereof.
*
* "Contribution" shall mean any work of authorship, including
* the original version of the Work and any modifications or additions
* to that Work or Derivative Works thereof, that is intentionally
* submitted to Licensor for inclusion in the Work by the copyright owner
* or by an individual or Legal Entity authorized to submit on behalf of
* the copyright owner. For the purposes of this definition, "submitted"
* means any form of electronic, verbal, or written communication sent
* to the Licensor or its representatives, including but not limited to
* communication on electronic mailing lists, source code control systems,
* and issue tracking systems that are managed by, or on behalf of, the
* Licensor for the purpose of discussing and improving the Work, but
* excluding communication that is conspicuously marked or otherwise
* designated in writing by the copyright owner as "Not a Contribution."
*
* "Contributor" shall mean Licensor and any individual or Legal Entity
* on behalf of whom a Contribution has been received by Licensor and
* subsequently incorporated within the Work.
*
* 2. Grant of Copyright License. Subject to the terms and conditions of
* this License, each Contributor hereby grants to You a perpetual,
* worldwide, non-exclusive, no-charge, royalty-free, irrevocable
* copyright license to reproduce, prepare Derivative Works of,
* publicly display, publicly perform, sublicense, and distribute the
* Work and such Derivative Works in Source or Object form.
*
* 3. Grant of Patent License. Subject to the terms and conditions of
* this License, each Contributor hereby grants to You a perpetual,
* worldwide, non-exclusive, no-charge, royalty-free, irrevocable
* (except as stated in this section) patent license to make, have made,
* use, offer to sell, sell, import, and otherwise transfer the Work,
* where such license applies only to those patent claims licensable
* by such Contributor that are necessarily infringed by their
* Contribution(s) alone or by combination of their Contribution(s)
* with the Work to which such Contribution(s) was submitted. If You
* institute patent litigation against any entity (including a
* cross-claim or counterclaim in a lawsuit) alleging that the Work
* or a Contribution incorporated within the Work constitutes direct
* or contributory patent infringement, then any patent licenses
* granted to You under this License for that Work shall terminate
* as of the date such litigation is filed.
*
* 4. Redistribution. You may reproduce and distribute copies of the
* Work or Derivative Works thereof in any medium, with or without
* modifications, and in Source or Object form, provided that You
* meet the following conditions:
*
* (a) You must give any other recipients of the Work or
* Derivative Works a copy of this License; and
*
* (b) You must cause any modified files to carry prominent notices
* stating that You changed the files; and
*
* (c) You must retain, in the Source form of any Derivative Works
* that You distribute, all copyright, patent, trademark, and
* attribution notices from the Source form of the Work,
* excluding those notices that do not pertain to any part of
* the Derivative Works; and
*
* (d) If the Work includes a "NOTICE" text file as part of its
* distribution, then any Derivative Works that You distribute must
* include a readable copy of the attribution notices contained
* within such NOTICE file, excluding those notices that do not
* pertain to any part of the Derivative Works, in at least one
* of the following places: within a NOTICE text file distributed
* as part of the Derivative Works; within the Source form or
* documentation, if provided along with the Derivative Works; or,
* within a display generated by the Derivative Works, if and
* wherever such third-party notices normally appear. The contents
* of the NOTICE file are for informational purposes only and
* do not modify the License. You may add Your own attribution
* notices within Derivative Works that You distribute, alongside
* or as an addendum to the NOTICE text from the Work, provided
* that such additional attribution notices cannot be construed
* as modifying the License.
*
* You may add Your own copyright statement to Your modifications and
* may provide additional or different license terms and conditions
* for use, reproduction, or distribution of Your modifications, or
* for any such Derivative Works as a whole, provided Your use,
* reproduction, and distribution of the Work otherwise complies with
* the conditions stated in this License.
*
* 5. Submission of Contributions. Unless You explicitly state otherwise,
* any Contribution intentionally submitted for inclusion in the Work
* by You to the Licensor shall be under the terms and conditions of
* this License, without any additional terms or conditions.
* Notwithstanding the above, nothing herein shall supersede or modify
* the terms of any separate license agreement you may have executed
* with Licensor regarding such Contributions.
*
* 6. Trademarks. This License does not grant permission to use the trade
* names, trademarks, service marks, or product names of the Licensor,
* except as required for reasonable and customary use in describing the
* origin of the Work and reproducing the content of the NOTICE file.
*
* 7. Disclaimer of Warranty. Unless required by applicable law or
* agreed to in writing, Licensor provides the Work (and each
* Contributor provides its Contributions) on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied, including, without limitation, any warranties or conditions
* of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
* PARTICULAR PURPOSE. You are solely responsible for determining the
* appropriateness of using or redistributing the Work and assume any
* risks associated with Your exercise of permissions under this License.
*
* 8. Limitation of Liability. In no event and under no legal theory,
* whether in tort (including negligence), contract, or otherwise,
* unless required by applicable law (such as deliberate and grossly
* negligent acts) or agreed to in writing, shall any Contributor be
* liable to You for damages, including any direct, indirect, special,
* incidental, or consequential damages of any character arising as a
* result of this License or out of the use or inability to use the
* Work (including but not limited to damages for loss of goodwill,
* work stoppage, computer failure or malfunction, or any and all
* other commercial damages or losses), even if such Contributor
* has been advised of the possibility of such damages.
*
* 9. Accepting Warranty or Additional Liability. While redistributing
* the Work or Derivative Works thereof, You may choose to offer,
* and charge a fee for, acceptance of support, warranty, indemnity,
* or other liability obligations and/or rights consistent with this
* License. However, in accepting such obligations, You may act only
* on Your own behalf and on Your sole responsibility, not on behalf
* of any other Contributor, and only if You agree to indemnify,
* defend, and hold each Contributor harmless for any liability
* incurred by, or claims asserted against, such Contributor by reason
* of your accepting any such warranty or additional liability.
*
* END OF TERMS AND CONDITIONS
*
* APPENDIX: How to apply the Apache License to your work.
*
* To apply the Apache License to your work, attach the following
* boilerplate notice, with the fields enclosed by brackets "[]"
* replaced with your own identifying information. (Don't include
* the brackets!) The text should be enclosed in the appropriate
* comment syntax for the file format. We also recommend that a
* file or class name and description of purpose be included on the
* same "printed page" as the copyright notice for easier
* identification within third-party archives.
*
* Copyright [yyyy] [name of copyright owner]
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
BCEL_6_0_RC3/doap_bcel.rdf 0000644 0001750 0001750 00000006023 12326157015 016170 0 ustar sylvestre sylvestre
Apache Commons BCEL
Java
Bytecode Engineering Library
The Byte Code Engineering Library is intended to give users a convenient possibility to analyze, create, and manipulate (binary) Java class files (those ending with .class). Classes are represented by objects which contain all the symbolic information of the given class: methods, fields and byte code instructions, in particular.
bcel
2006-06-07
5.2
bcel
2003-04-25
5.1
bcel
2001-12-15
5.0
BCEL_6_0_RC3/README.txt 0000644 0001750 0001750 00000001724 12326156206 015265 0 ustar sylvestre sylvestre Running a console based verifier
java org.apache.bcel.verifier.Verifier fully.qualified.class.Name
lets JustIce work standalone.
If you get a "java.lang.OutOfMemoryError", you should increase the
maximum Java heap space. A command like
java -Xmx1887436800 org.apache.bcel.verifier.Verifier f.q.c.Name
will usually resolve the problem. The value above is suitable for
big server machines; if your machine starts swapping to disk, try
to lower the value.
Running a graphics based verifier
If you prefer a graphical application, you should use a command like
java org.apache.bcel.verifier.GraphicalVerifier
to launch one. Again, you may have to resolve a memory issue depending
on the classes to verify.
Contact
If you spot a bug in the BCEL or its accompanying verifier "JustIce" please
check with the BCEL mailing list
http://commons.apache.org/bcel
or enter the issue into the BCEL bug database
https://issues.apache.org/jira/browse/BCEL
BCEL_6_0_RC3/LICENSE-header.txt 0000644 0001750 0001750 00000001627 12411365643 016644 0 ustar sylvestre sylvestre ^/\*\*?\s*$
^ \*\s*Licensed to the Apache Software Foundation \(ASF\) under one or more\s*$
^ \*\s*contributor license agreements. See the NOTICE file distributed with\s*$
^ \*\s*this work for additional information regarding copyright ownership.\s*$
^ \*\s*The ASF licenses this file to You under the Apache License, Version 2.0\s*$
^ \*\s*\(the \"License\"\); you may not use this file except in compliance with\s*$
^ \*\s*the License. You may obtain a copy of the License at\s*$
^ \*\s*$
^ \*\s+http://www\.apache\.org/licenses/LICENSE-2\.0\s*$
^ \*\s*$
^ \*\s*Unless required by applicable law or agreed to in writing, software\s*$
^ \*\s*distributed under the License is distributed on an "AS IS" BASIS,\s*$
^ \*\s*WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\s*$
^ \*\s*See the License for the specific language governing permissions and\s*$
^ \*\s*limitations under the License.\s*$ BCEL_6_0_RC3/pom.xml 0000644 0001750 0001750 00000024677 12411461313 015111 0 ustar sylvestre sylvestre
4.0.0
org.apache.commons
commons-parent
34
org.apache.bcel
bcel
jar
6.0
Apache Commons BCEL
Apache Commons Bytecode Engineering Library
http://commons.apache.org/proper/commons-bcel
2004
ISO-8859-1
UTF-8
1.5
1.5
bcel
6.0
(Java 5.0+)
https://svn.apache.org/repos/infra/websites/production/commons/content/proper/commons-bcel
org.apache.${commons.componentid}
org.apache.bcel.*;version=${project.version};-noimport:=true
*
BCEL
12314220
apache.website
Apache Website
scp://people.apache.org/www/commons.apache.org/${commons.componentid}/
Apache License, Version 2.0
http://www.apache.org/licenses/LICENSE-2.0.txt
repo
The Apache Software Foundation
http://www.apache.org/
Dave Brosius
dbrosius
dbrosius at mebigfatguy.com
Torsten Curdt
tcurdt
tcurdt at apache.org
ASF
http://www.apache.org/
+1
Markus Dahm
mdahm
m.dahm at gmx.de
it-frameworksolutions
Jason van Zyl
jason at zenplex.com
Enver Haase
enver at convergence.de
David Dixon-Peugh
dixonpeugh at yahoo.com
Patrick Beard
beard at netscape.com
Conor MacNeill
conor at cortexbusiness.com.au
Costin Manolache
cmanolache at yahoo.com
BCEL User List
user-subscribe@commons.apache.org
user-unsubscribe@commons.apache.org
http://mail-archives.apache.org/mod_mbox/commons-user/
BCEL Developer List
dev-subscribe@commons.apache.org
dev-unsubscribe@commons.apache.org
http://mail-archives.apache.org/mod_mbox/commons-dev/
jira
http://issues.apache.org/jira/browse/BCEL
scm:svn:http://svn.apache.org/repos/asf/commons/proper/bcel/trunk
scm:svn:http://svn.apache.org/repos/asf/commons/proper/bcel/trunk
http://svn.apache.org/repos/asf/commons/proper/bcel/trunk
org.apache.maven.plugins
maven-jar-plugin
test-jar
maven-surefire-plugin
**/*TestCase.java
**/Abstract*
maven-assembly-plugin
src/main/assembly/bin.xml
src/main/assembly/src.xml
gnu
org.apache.maven.plugins
maven-javadoc-plugin
2.9.1
org.apache.maven.plugins
maven-scm-publish-plugin
javadocs
org.apache.maven.plugins
maven-checkstyle-plugin
2.9.1
${basedir}/checkstyle.xml
false
${basedir}/LICENSE-header.txt
checkstyle
org.apache.maven.plugins
maven-pmd-plugin
3.1
${maven.compiler.target}
true
${basedir}/pmd.xml
org.codehaus.mojo
findbugs-maven-plugin
2.5.4
true
-Duser.language=en
org.codehaus.mojo
taglist-maven-plugin
2.4
TODO
NOPMD
NOTE
org.codehaus.mojo
cobertura-maven-plugin
2.6
org.apache.rat
apache-rat-plugin
${commons.rat.version}
src/test/resources/**
docs/*.bib
docs/*.mdl
docs/eps/*
**/*.eps
**/*.bnf
**/*.mini
TODO.JustIce
src/examples/Mini/MiniParser$JJCalls
junit
junit
4.11
test
BCEL_6_0_RC3/TODO.JustIce 0000644 0001750 0001750 00000004463 07615542746 015644 0 ustar sylvestre sylvestre
$Id: TODO.JustIce 152844 2003-01-28 18:03:18Z enver $
"TODO" list for JustIce, the Java Class File Verifier by Enver Haase.
- JustIce uses object generalization during pass 3b, as supposed by
Sun. However, there are better methods such as the idea proposed by
Staerk et al.: using sets of object types. JustIce may reject code
that is not rejected by traditional JVM-internal verifiers for this
reason. The corresponding checks all have some "TODO" tag with an
explanation; they're all in the 'InstConstraintVisitor.java' file.
Users encountering problems should simply comment them out (or
uncomment them) as they like. The default is some setting that works
well when using
$ java org.apache.bcel.verifier.TransitiveHull java.lang.String
meaning there are no rejects caused by the above problem in a lot of
usual classes.
- There are a few bugs concerning access rights of referenced methods
and probably fields. The tests for access rights that Sun defines
should happen in pass four (which JustIce performs during pass 3a) are
unintentionally omitted. This also happened to Sun and IBM with some
of their version 1.3 JVMs. Thanks Markus Dahm.
- There are bugs because of an ambiguity in the Java Virtual Machine
Specification, Second Edition. These have to do with inheritance: A
method invocation like MyObject::equals(Object) is considered illegal,
if MyObject has no overriding definition of equals(Object). Sun
clarified this issue via electronic mail: the invocation is legal,
because MyObject inherits the member function equals(Object) from
Object::equals(Object). The search algorithms don't seem to be trivial
because interfaces can not only specify methods, but also declare
fields. Also, access modifiers have to be honoured (see above).
- It is not verified if classes that propose they would implement an
interface _really_ implement all the methods.
- It is not verified that interfaces are actually tagged 'abstract'.
- The InstructionContext.getSuccessors() method may return the same
successor more than one time. For performance reasons the ControlFlow-
Graph.InstructionContextImpl class should return an array where the
successors are pairwise disjoint. It should also be cached so that we
don't have to do this calculation every time.
***End of File***
BCEL_6_0_RC3/pmd.xml 0000644 0001750 0001750 00000002266 12344227602 015072 0 ustar sylvestre sylvestre
Excludes from default PMD rules.