diff --git a/README.md b/README.md index cfb565a..04f9fb5 100644 --- a/README.md +++ b/README.md @@ -33,3 +33,23 @@ $ PREFIX=x86_64-w64-mingw32- make -j4 This will build a `pscrypto.dll` for 64-bit Windows. Platform and architecture quirks are handled by the file `Makefile.inc`. You can also specify the `ARCH` variable manually (as `i686` or `x86_64`) in order to enable multilib building, if available. + +## Releasing Code +You are able to create a release on a Linux 64-bit system with the MingW64 compiler toolchain installed. The prefixes required to build are + +``` +x86_64-w64-mingw32- +i686-w64-mingw32- +x86_64-linux-gnu- +``` + +Check out [the script to build a release](scripts/build.sh). + +### Release Checklist + +* Everything builds correctly +* Version has been bumped in [pscrypto/pscrypto.h](pscrypto/pscrypto.h) and in the Windows resource file [pscrypto/resource.rc](pscrypto/resource.rc) +* A release can be made with the build script +* Release notes have been updated +* All external references and this repository are tagged with attached release binaries +* Update links (travis, other readmes) to point to the latest release diff --git a/ReleaseNotes.txt b/ReleaseNotes.txt new file mode 100644 index 0000000..3315653 --- /dev/null +++ b/ReleaseNotes.txt @@ -0,0 +1,8 @@ +Version 1.1 +=========== +* Minor fix on Unix systems. /dev/random was being defaulted to, causing the + entropy pool to run out, blocking library users. /dev/urandom now default + +Version 1.0 +=========== +* Initial release with PlanetSide crypto functionality diff --git a/external/psf-cryptopp b/external/psf-cryptopp index 28b6e6e..f11c0bd 160000 --- a/external/psf-cryptopp +++ b/external/psf-cryptopp @@ -1 +1 @@ -Subproject commit 28b6e6e6edaf340e2369707283a990ea24943f6b +Subproject commit f11c0bdb0c84aa4ab5fc19687e960cedca01468e diff --git a/pscrypto/pscrypto.h b/pscrypto/pscrypto.h index a9b5f66..efc3f45 100644 --- a/pscrypto/pscrypto.h +++ b/pscrypto/pscrypto.h @@ -4,7 +4,7 @@ #define _PS_STRINGIZE(S) #S #define PSCRYPTO_VERSION_MAJOR 1 -#define PSCRYPTO_VERSION_MINOR 0 +#define PSCRYPTO_VERSION_MINOR 1 #define PSCRYPTO_VERSION_STRING _PS_STRINGIZE(PSCRYPTO_VERSION_MAJOR) "." _PS_STRINGIZE(PSCRYPTO_VERSION_MINOR) diff --git a/pscrypto/pscrypto.py b/pscrypto/pscrypto.py index 5eadf4d..7b92072 100644 --- a/pscrypto/pscrypto.py +++ b/pscrypto/pscrypto.py @@ -3,7 +3,7 @@ from binascii import hexlify from ctypes import * import os -lib = cdll.LoadLibrary(os.path.dirname(os.path.realpath(__file__)) + "/pscrypto.dll") +lib = cdll.LoadLibrary(os.path.dirname(os.path.realpath(__file__)) + "/libpscrypto.so") lib.MD5_MAC.restype = c_bool lib.MD5_MAC.prototype = [c_char_p, c_uint, c_char_p, c_uint, c_char_p, c_uint] @@ -75,7 +75,6 @@ def ServerEnc(encHandle, pt): return ct.raw def main(): - raw_input() (dhHandle, priv, pub) = ServerDHStart("\x41\x75"*8, "\x01"*15 + "\x03") print "Started" print ServerDHAgree(dhHandle, priv, "A"*16) diff --git a/pscrypto/resource.rc b/pscrypto/resource.rc index d7af672..d9c5cba 100644 --- a/pscrypto/resource.rc +++ b/pscrypto/resource.rc @@ -2,8 +2,8 @@ // DLL version information. VS_VERSION_INFO VERSIONINFO -FILEVERSION 1,0,0,0 -PRODUCTVERSION 1,0,0,0 +FILEVERSION 1,1,0,0 +PRODUCTVERSION 1,1,0,0 FILEFLAGSMASK VS_FFI_FILEFLAGSMASK #ifdef _DEBUG FILEFLAGS VS_FF_DEBUG | VS_FF_PRERELEASE @@ -20,12 +20,12 @@ BEGIN BEGIN VALUE "CompanyName", "PSForever Project" VALUE "FileDescription", "A PlanetSide crypto library for CryptoPP." - VALUE "FileVersion", "1.0.0.0" + VALUE "FileVersion", "1.1.0.0" VALUE "InternalName", "pscrypto" VALUE "LegalCopyright", "(C) 2016 PSForever Project" VALUE "OriginalFilename", "pscrypto.dll" VALUE "ProductName", "PlanetSide Crypto" - VALUE "ProductVersion", "1.0.0.0" + VALUE "ProductVersion", "1.1.0.0" END END BLOCK "VarFileInfo"