Git Product home page Git Product logo

rocksaw's Introduction

RockSaw

TravisCI: Build Status

A fork of RockSaw (http://www.savarese.com/software/rocksaw/) that includes Maven support.

Please note that the JNI stuff needs a bit of love to build - the Makefile was mangled (by me/Michael Laccetti).

About

RockSaw is a simple API for performing network I/O with raw sockets in Java.

IPv6 support was graciously funded by ByteSphere Technologies (www.bytesphere.com).

Commercial support is provided by Savarese Software Research Corporation (www.savarese.com).

Requirements

The 1.1.0 version of RockSaw has been compiled and tested on Linux, Win32 with Cygwin/MinGW/Winsock or Visual C++, and Mac OS X 10.11.4. It should compile on other POSIX systems using the GNU tool chain.

No binary distributions are presently released; you will have to compile for yourself.

Java 1.8 or greater is required to compile/run.

Compiling

You must have the JAVA_HOME environment variable set and pointing to the directory where the Java Development Kit is installed. Otherwise, the JNI headers will not be found.

The project requires maven to build; The command mvn clean package should be sufficient to compile the JAR and associated library.

There are very few files in the source tree:

  • src/main/java Java source code
  • src/main/native The C JNI source and Makefile

Note about make

The default Makefile requires GNU make.

Win32: Visual C++ (Outdated Instructions)

To compile using Visual C++, you have to override the default compiler command, make command, and makefile properties:

jni.cc jni.make jni.makefile

You can override these on the command line or in build.properties. For example, to compile using Visual C++, you would use the following command:

ant -Djni.cc=cl -Djni.make=nmake -Djni.makefile=Makefile.win32 jar

Make sure your JDK_HOME environment variable is set and that you've run either the vcvars.bat or vsvars32.bat command (depending on the version of Visual C++ you're using) to set your paths for the command line tools.

Mac OS X

Be sure to set JAVA_HOME to the right location. It will typically be something like /Library/Java/JavaVirtualMachines/jdk1.8.0_66.jdk/Contents/Home.

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_66.jdk/Contents/Home
mvn clean pacakge

Licensing

RockSaw is Copyright 2004-2007 by Daniel F. Savarese Copyright 2007-2009 by Savarese Software Research Corporation and licensed under the Apache License 2.0 as described in the files:

LICENSE NOTICE

Notes

On most operating systems, you must have root access or administrative privileges to use raw sockets. If you are running a firewall, you will have to make sure it allows ICMP requests through.

The API is minimalist, yet functional. Don't hesitate to submit patches that enhance the functionality.

Contact

http://www.savarese.com/contact.html

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.