Apache Commons logo Commons Crypto? logo

Rat (Release Audit Tool) results

The following document contains the results of Rat (Release Audit Tool).

*****************************************************
Summary
-------
Generated at: 2016-04-26T14:50:55+08:00
Notes: 1
Binaries: 3
Archives: 0
Standards: 85

Apache Licensed: 70
Generated Documents: 0

JavaDocs are generated and so license header is optional
Generated files do not required license headers

15 Unknown Licenses

*******************************

Unapproved licenses:

  lib/include/config.h
  lib/inc_mac/jni.h
  lib/inc_mac/jni_md.h
  lib/META-INF/MicroBenchmarks
  lib/META-INF/CompilerHints
  lib/inc_win/jni.h
  lib/inc_win/jni_md.h
  lib/inc_ibm/jniport.h
  lib/inc_ibm/jni_md.h
  lib/inc_linux/jni.h
  lib/inc_linux/jni_md.h
  Makefile
  .travis.yml
  Makefile.common
  src/main/java/org/apache/commons/crypto/VERSION

*******************************

Archives:

*****************************************************
  Files with Apache License headers will be marked AL
  Binary files (which do not require AL headers) will be marked B
  Compressed archives will be marked A
  Notices, licenses etc will be marked N
  B     lib/com/intel/chimera/utils/OSInfo.class
 !????? lib/include/config.h
  B     lib/org/apache/commons/crypto/utils/OSInfo.class
 !????? lib/inc_mac/jni.h
 !????? lib/inc_mac/jni_md.h
 !????? lib/META-INF/MicroBenchmarks
 !????? lib/META-INF/CompilerHints
 !????? lib/inc_win/jni.h
 !????? lib/inc_win/jni_md.h
 !????? lib/inc_ibm/jniport.h
 !????? lib/inc_ibm/jni_md.h
 !????? lib/inc_linux/jni.h
 !????? lib/inc_linux/jni_md.h
  AL    README.md
  AL    PROPOSAL.html
 !????? Makefile
  N     LICENSE.txt
 !????? .travis.yml
 !????? Makefile.common
  AL    src/test/java/org/apache/commons/crypto/stream/CTRNoPaddingCipherStreamTest.java
  AL    src/test/java/org/apache/commons/crypto/stream/AbstractCipherStreamTest.java
  AL    src/test/java/org/apache/commons/crypto/stream/CBCNoPaddingCipherStreamTest.java
  AL    src/test/java/org/apache/commons/crypto/stream/CBCPKCS5PaddingCipherStreamTest.java
  AL    src/test/java/org/apache/commons/crypto/stream/CTRCipherStreamTest.java
  AL    src/test/java/org/apache/commons/crypto/stream/PositionedCipherInputStreamTest.java
  AL    src/test/java/org/apache/commons/crypto/utils/UtilsTest.java
  AL    src/test/java/org/apache/commons/crypto/cipher/OpensslCipherTest.java
  AL    src/test/java/org/apache/commons/crypto/cipher/JceCipherTest.java
  AL    src/test/java/org/apache/commons/crypto/cipher/AbstractCipherTest.java
  AL    src/test/java/org/apache/commons/crypto/cipher/CipherFactoryTest.java
  AL    src/test/java/org/apache/commons/crypto/cipher/TestData.java
  AL    src/test/java/org/apache/commons/crypto/random/AbstractRandomTest.java
  AL    src/test/java/org/apache/commons/crypto/random/TestOpensslSecureRandom.java
  AL    src/test/java/org/apache/commons/crypto/random/TestJavaSecureRandom.java
  AL    src/test/java/org/apache/commons/crypto/random/TestOsSecureRandom.java
  AL    src/site/site.xml
  B     src/site/resources/images/logo.png
  AL    src/site/xdoc/download_crypto.xml
  AL    src/site/xdoc/index.xml
  AL    src/site/xdoc/userguide.xml
  AL    src/site/xdoc/proposal.xml
  AL    src/site/xdoc/mail-lists.xml
  AL    src/site/xdoc/issue-tracking.xml
  AL    src/main/java/org/apache/commons/crypto/stream/output/Output.java
  AL    src/main/java/org/apache/commons/crypto/stream/output/StreamOutput.java
  AL    src/main/java/org/apache/commons/crypto/stream/output/ChannelOutput.java
  AL    src/main/java/org/apache/commons/crypto/stream/output/package-info.java
  AL    src/main/java/org/apache/commons/crypto/stream/PositionedCipherInputStream.java
  AL    src/main/java/org/apache/commons/crypto/stream/CTRCipherOutputStream.java
  AL    src/main/java/org/apache/commons/crypto/stream/CipherInputStream.java
  AL    src/main/java/org/apache/commons/crypto/stream/CTRCipherInputStream.java
  AL    src/main/java/org/apache/commons/crypto/stream/input/Input.java
  AL    src/main/java/org/apache/commons/crypto/stream/input/ChannelInput.java
  AL    src/main/java/org/apache/commons/crypto/stream/input/StreamInput.java
  AL    src/main/java/org/apache/commons/crypto/stream/input/package-info.java
  AL    src/main/java/org/apache/commons/crypto/stream/CipherOutputStream.java
  AL    src/main/java/org/apache/commons/crypto/stream/package-info.java
 !????? src/main/java/org/apache/commons/crypto/VERSION
  AL    src/main/java/org/apache/commons/crypto/utils/ReflectionUtils.java
  AL    src/main/java/org/apache/commons/crypto/utils/Utils.java
  AL    src/main/java/org/apache/commons/crypto/utils/OSInfo.java
  AL    src/main/java/org/apache/commons/crypto/utils/IOUtils.java
  AL    src/main/java/org/apache/commons/crypto/utils/NativeCodeLoader.java
  AL    src/main/java/org/apache/commons/crypto/utils/package-info.java
  AL    src/main/java/org/apache/commons/crypto/conf/ConfigurationKeys.java
  AL    src/main/java/org/apache/commons/crypto/conf/package-info.java
  AL    src/main/java/org/apache/commons/crypto/cipher/Openssl.java
  AL    src/main/java/org/apache/commons/crypto/cipher/OpensslNative.java
  AL    src/main/java/org/apache/commons/crypto/cipher/CipherFactory.java
  AL    src/main/java/org/apache/commons/crypto/cipher/Cipher.java
  AL    src/main/java/org/apache/commons/crypto/cipher/JceCipher.java
  AL    src/main/java/org/apache/commons/crypto/cipher/OpensslCipher.java
  AL    src/main/java/org/apache/commons/crypto/cipher/CipherTransformation.java
  AL    src/main/java/org/apache/commons/crypto/cipher/package-info.java
  AL    src/main/java/org/apache/commons/crypto/random/OsSecureRandom.java
  AL    src/main/java/org/apache/commons/crypto/random/OpensslSecureRandom.java
  AL    src/main/java/org/apache/commons/crypto/random/OpensslSecureRandomNative.java
  AL    src/main/java/org/apache/commons/crypto/random/SecureRandom.java
  AL    src/main/java/org/apache/commons/crypto/random/SecureRandomFactory.java
  AL    src/main/java/org/apache/commons/crypto/random/JavaSecureRandom.java
  AL    src/main/java/org/apache/commons/crypto/random/package-info.java
  AL    src/main/native/org/apache/commons/crypto/org_apache_commons_crypto.h
  AL    src/main/native/org/apache/commons/crypto/exception.h
  AL    src/main/native/org/apache/commons/crypto/cipher/OpensslNative.c
  AL    src/main/native/org/apache/commons/crypto/random/org_apache_commons_crypto_random.h
  AL    src/main/native/org/apache/commons/crypto/random/OpensslSecureRandomNative.c
  AL    src/main/native/org/apache/commons/crypto/exception.c
  AL    findbugs-exclude.xml
  AL    pom.xml
 
*****************************************************
 Printing headers for files without AL header...
 
 
=======================================================================
==lib/include/config.h
=======================================================================

#ifndef __CONFIG_H
#define __CONFIG_H
#define COMMONS_CRYPTO_OPENSSL_LIBRARY "libcrypto.so"
#endif // __CONFIG_H

=======================================================================
==lib/inc_mac/jni.h
=======================================================================
/*
 * @(#)jni.h	1.62 06/02/02
 *
 * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
 * SUN PROPRIETARY/CONFIDENTIAL.  Use is subject to license terms.
 */

/*
 * We used part of Netscape's Java Runtime Interface (JRI) as the starting
 * point of our design and implementation.
 */

/******************************************************************************
 * Java Runtime Interface
 * Copyright (c) 1996 Netscape Communications Corporation. All rights reserved.
 *****************************************************************************/

#ifndef _JAVASOFT_JNI_H_
#define _JAVASOFT_JNI_H_

#include <stdio.h>
#include <stdarg.h>

/* jni_md.h contains the machine-dependent typedefs for jbyte, jint
   and jlong */

#include "jni_md.h"

#ifdef __cplusplus
extern "C" {
#endif

/*
 * JNI Types
 */

#ifndef JNI_TYPES_ALREADY_DEFINED_IN_JNI_MD_H

typedef unsigned char	jboolean;
typedef unsigned short	jchar;
typedef short		jshort;
typedef float		jfloat;
typedef double		jdouble;

typedef jint            jsize;

#ifdef __cplusplus

class _jobject {};
class _jclass : public _jobject {};

=======================================================================
==lib/inc_mac/jni_md.h
=======================================================================
/*
 * @(#)jni_md.h	1.19 05/11/17
 *
 * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
 * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 */

#ifndef _JAVASOFT_JNI_MD_H_
#define _JAVASOFT_JNI_MD_H_

#define JNIEXPORT __attribute__((visibility("default")))
#define JNIIMPORT
#define JNICALL

#if defined(__LP64__) && __LP64__ /* for -Wundef */
typedef int jint;
#else
typedef long jint;
#endif
typedef long long jlong;
typedef signed char jbyte;

#endif /* !_JAVASOFT_JNI_MD_H_ */

=======================================================================
==lib/META-INF/MicroBenchmarks
=======================================================================

=======================================================================
==lib/META-INF/CompilerHints
=======================================================================

=======================================================================
==lib/inc_win/jni.h
=======================================================================
/*
 * @(#)jni.h	1.63 10/03/23
 *
 * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
 * ORACLE PROPRIETARY/CONFIDENTIAL.  Use is subject to license terms.
 */

/*
 * We used part of Netscape's Java Runtime Interface (JRI) as the starting
 * point of our design and implementation.
 */

/******************************************************************************
 * Java Runtime Interface
 * Copyright (c) 1996 Netscape Communications Corporation. All rights reserved.
 *****************************************************************************/

#ifndef _JAVASOFT_JNI_H_
#define _JAVASOFT_JNI_H_

#include <stdio.h>
#include <stdarg.h>

/* jni_md.h contains the machine-dependent typedefs for jbyte, jint
   and jlong */

#include "jni_md.h"

#ifdef __cplusplus
extern "C" {
#endif

/*
 * JNI Types
 */

#ifndef JNI_TYPES_ALREADY_DEFINED_IN_JNI_MD_H

typedef unsigned char	jboolean;
typedef unsigned short	jchar;
typedef short		jshort;
typedef float		jfloat;
typedef double		jdouble;

typedef jint            jsize;

#ifdef __cplusplus

class _jobject {};
class _jclass : public _jobject {};

=======================================================================
==lib/inc_win/jni_md.h
=======================================================================
/*
 * @(#)jni_md.h	1.16 10/03/23
 *
 * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
 * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 */

#ifndef _JAVASOFT_JNI_MD_H_
#define _JAVASOFT_JNI_MD_H_

#define JNIEXPORT __declspec(dllexport)
#define JNIIMPORT __declspec(dllimport)
#define JNICALL __stdcall

typedef long jint;
typedef __int64 jlong;
typedef signed char jbyte;

#endif /* !_JAVASOFT_JNI_MD_H_ */

=======================================================================
==lib/inc_ibm/jniport.h
=======================================================================
/*******************************************************************************
 * Licensed Materials - Property of IBM
 * "Restricted Materials of IBM"
 * 
 * (c) Copyright IBM Corp. 1991, 2014 All Rights Reserved
 * 
 * US Government Users Restricted Rights - Use, duplication or disclosure
 * restricted by GSA ADP Schedule Contract with IBM Corp.
 *******************************************************************************/

#ifndef jniport_h
#define jniport_h

#if defined(WIN32) || defined(_WIN32) || defined(RIM386) || (defined(BREW) && defined(AEE_SIMULATOR))

#define JNIEXPORT __declspec(dllexport)
#define JNICALL __stdcall
typedef signed char jbyte;
typedef int jint;
typedef __int64 jlong;

#else

#define JNIEXPORT  __attribute__((__visibility__("default")))

typedef signed char jbyte;
/*typedef long long jlong;*/

#ifdef BREW
#include "AEEFile.h"
#define FILE IFile
#endif

typedef int jint;

#endif /* WIN32 */

#ifndef JNICALL
#define JNICALL
#endif

#ifndef JNIEXPORT
#define JNIEXPORT  __attribute__((__visibility__("default")))
#endif

#ifndef JNIIMPORT
#define JNIIMPORT
#endif

#ifdef _JNI_IMPLEMENTATION_

=======================================================================
==lib/inc_ibm/jni_md.h
=======================================================================
/*===========================================================================
 * Licensed Materials - Property of IBM
 * "Restricted Materials of IBM"
 * 
 * IBM SDK, Java(tm) Technology Edition, v7
 * (C) Copyright IBM Corp. 2014, 2014. All Rights Reserved
 *
 * US Government Users Restricted Rights - Use, duplication or disclosure
 * restricted by GSA ADP Schedule Contract with IBM Corp.
 *===========================================================================
 */
/*
 * Copyright (c) 1996, 2000, Oracle and/or its affiliates. All rights reserved.
 * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 */

#ifndef _JAVASOFT_JNI_MD_H_
#define _JAVASOFT_JNI_MD_H_

#define JNIEXPORT  __attribute__((__visibility__("default")))
#define JNIIMPORT
#define JNICALL

typedef int jint;
#ifdef _LP64 /* 64-bit Solaris */
typedef long jlong;
#else
/*typedef long long jlong;*/
#endif


=======================================================================
==lib/inc_linux/jni.h
=======================================================================
/*
 * Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */

/*
 * We used part of Netscape's Java Runtime Interface (JRI) as the starting
 * point of our design and implementation.
 */

/******************************************************************************
 * Java Runtime Interface
 * Copyright (c) 1996 Netscape Communications Corporation. All rights reserved.
 *****************************************************************************/

#ifndef _JAVASOFT_JNI_H_
#define _JAVASOFT_JNI_H_

#include <stdio.h>
#include <stdarg.h>

/* jni_md.h contains the machine-dependent typedefs for jbyte, jint
   and jlong */

#include "jni_md.h"

#ifdef __cplusplus
extern "C" {
#endif


=======================================================================
==lib/inc_linux/jni_md.h
=======================================================================
/*
 * %W% %E%
 *
 * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
 * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 */

#ifndef _JAVASOFT_JNI_MD_H_
#define _JAVASOFT_JNI_MD_H_

#define JNIEXPORT __attribute__((__visibility__("default")))
#define JNIIMPORT
#define JNICALL

typedef int jint;
#ifdef _LP64 /* 64-bit Solaris */
typedef long jlong;
#else
typedef long long jlong;
#endif

typedef signed char jbyte;

#endif /* !_JAVASOFT_JNI_MD_H_ */

=======================================================================
==Makefile
=======================================================================
include Makefile.common

MVN:=mvn

COMMONS_CRYPTO_OUT:=$(TARGET)/$(commons-crypto)-$(os_arch)
COMMONS_CRYPTO_OBJ:=$(addprefix $(COMMONS_CRYPTO_OUT)/,OpensslSecureRandom.o OpensslNative.o)

ifeq ($(OS_NAME),SunOS)
  TAR:= gtar
else
  TAR:= tar
endif

NATIVE_TARGET_DIR:=$(TARGET)/classes/org/apache/commons/crypto/native/$(OS_NAME)/$(OS_ARCH)
NATIVE_DLL:=$(NATIVE_TARGET_DIR)/$(LIBNAME)

all: $(NATIVE_DLL)

$(TARGET)/jni-classes/org/apache/commons/crypto/cipher/OpensslNative.class : $(SRC)/org/apache/commons/crypto/cipher/OpensslNative.java
	@mkdir -p $(TARGET)/jni-classes
	$(JAVAC) -source 1.6 -target 1.6 -d $(TARGET)/jni-classes -sourcepath $(SRC) $<

$(TARGET)/jni-classes/org/apache/commons/crypto/random/OpensslSecureRandomNative.class : $(SRC)/org/apache/commons/crypto/random/OpensslSecureRandomNative.java
	@mkdir -p $(TARGET)/jni-classes
	$(JAVAC) -source 1.6 -target 1.6 -d $(TARGET)/jni-classes -sourcepath $(SRC) $<

$(TARGET)/jni-classes/org/apache/commons/crypto/cipher/OpensslNative.h: $(TARGET)/jni-classes/org/apache/commons/crypto/cipher/OpensslNative.class
	$(JAVAH) -force -classpath $(TARGET)/jni-classes -o $@ org.apache.commons.crypto.cipher.OpensslNative

$(TARGET)/jni-classes/org/apache/commons/crypto/random/OpensslSecureRandomNative.h: $(TARGET)/jni-classes/org/apache/commons/crypto/random/OpensslSecureRandomNative.class
	$(JAVAH) -force -classpath $(TARGET)/jni-classes -o $@ org.apache.commons.crypto.random.OpensslSecureRandomNative

$(COMMONS_CRYPTO_OUT)/OpensslNative.o : $(SRC_NATIVE)/org/apache/commons/crypto/cipher/OpensslNative.c $(TARGET)/jni-classes/org/apache/commons/crypto/cipher/OpensslNative.h
	@mkdir -p $(@D)
	$(CC) $(CFLAGS) -c $< -o $@

$(COMMONS_CRYPTO_OUT)/OpensslSecureRandom.o : $(SRC_NATIVE)/org/apache/commons/crypto/random/OpensslSecureRandomNative.c $(TARGET)/jni-classes/org/apache/commons/crypto/random/OpensslSecureRandomNative.h
	@mkdir -p $(@D)
	$(CC) $(CFLAGS) -c $< -o $@

$(COMMONS_CRYPTO_OUT)/$(LIBNAME): $(COMMONS_CRYPTO_OBJ)
	$(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS)
	$(STRIP) $@

clean:
	rm -rf $(TARGET)
	rm -rf $(COMMONS_CRYPTO_OUT)

native: $(NATIVE_DLL)


=======================================================================
==.travis.yml
=======================================================================
language: java
jdk:
  - openjdk6
  - oraclejdk7
script:
  - mvn apache-rat:check
  - mvn clean test
  - jdk_switcher use oraclejdk7
  - mvn test -Pfindbugs


=======================================================================
==Makefile.common
=======================================================================
TARGET:=target
SRC:=src/main/java
SRC_NATIVE:=src/main/native
include $(SRC)/org/apache/commons/crypto/VERSION

ifndef JAVA_HOME
$(error Set JAVA_HOME environment variable)
endif


JAVA  := "$$JAVA_HOME/bin/java"
JAVAC := "$$JAVA_HOME/bin/javac"
JAVAH := "$$JAVA_HOME/bin/javah"

OSINFO_CLASS := org.apache.commons.crypto.utils.OSInfo
OSINFO_PROG := lib/org/apache/commons/crypto/utils/OSInfo.class

## building OSInfo.java
$(info compiling OSInfo.java)
$(shell mkdir -p lib)
$(shell $(JAVAC) src/main/java/org/apache/commons/crypto/utils/OSInfo.java -d lib)

OS_NAME := $(shell $(JAVA) -cp lib $(OSINFO_CLASS) --os)
OS_ARCH := $(shell $(JAVA) -cp lib $(OSINFO_CLASS) --arch)
LIB_FOLDER := $(shell $(JAVA) -cp lib $(OSINFO_CLASS))
IBM_JDK_LIB := lib/inc_ibm

# Windows uses different path separators
ifeq ($(OS_NAME),Windows)
  sep := ;
else
  sep := :
endif

commons-crypto := commons-crypto-$(VERSION)


jni_md := $(shell find -L "$(JAVA_HOME)" -name jni_md.h | head -1)
ifneq ($(jni_md),)
jni_include := $(shell dirname "$(jni_md)")
endif


# os=Default is meant to be generic unix/linux

known_os_archs := Linux-x86 Linux-x86_64 Linux-arm Linux-armhf Linux-ppc Linux-ppc64 Mac-x86 Mac-x86_64 FreeBSD-x86_64 Windows-x86 Windows-x86_64 SunOS-x86 SunOS-sparc SunOS-x86_64 AIX-ppc64
os_arch := $(OS_NAME)-$(OS_ARCH)
IBM_JDK_7 := $(findstring IBM, $(shell $(JAVA) -version 2>&1 | grep IBM | grep "JRE 1.7"))

ifeq (,$(findstring $(strip $(os_arch)),$(known_os_archs)))

=======================================================================
==src/main/java/org/apache/commons/crypto/VERSION
=======================================================================
VERSION=1.0.0-SNAPSHOT