From: Kevin M. Rosenberg Date: Sat, 29 Aug 2015 06:15:58 +0000 (-0600) Subject: Update domain name to kpe.io X-Git-Tag: v6.6.3~2 X-Git-Url: http://git.kpe.io/?p=clsql.git;a=commitdiff_plain;h=f67c4e2a4e5b8371a1b7c1629828999ff909f538 Update domain name to kpe.io --- diff --git a/ChangeLog b/ChangeLog index 2bc632f..86362c5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2015-08-12 Kevin Rosenberg + * Version 6.6.3 release + * db-oracle/oracle-sql.lisp: Patch for PostgreSQL socket interface + for unicode characters. Thanks to Jason Melbye. + 2015-03-30 Kevin Rosenberg * Version 6.6.2 release * db-oracle/oracle-sql.lisp: Remove extra hyphen, thanks to diff --git a/NEWS b/NEWS index d1e96f2..b69ad00 100644 --- a/NEWS +++ b/NEWS @@ -36,7 +36,7 @@ well as the initial regression suite and most of the new documentation. He has contributed to many of the re-design decisions and new code for CLSQL. -CLSQL's home is http://clsql.b9.com +CLSQL's home is http://clsql.kpe.io Enjoy! diff --git a/README b/README index 3caff9f..8fdfd89 100644 --- a/README +++ b/README @@ -3,7 +3,7 @@ Rosenberg. It includes both functional and object oriented subsystems for data definition and manipulation as well as an integrated symbolic SQL syntax. -CLSQL supports a number of RDBMS and uses the UFFI (http://uffi.b9.com) +CLSQL supports a number of RDBMS and uses the UFFI (http://uffi.kpe.io) library for compatibility with Allegro CL, Lispworks, CMUCL, SBCL and OpenMCL. @@ -14,7 +14,7 @@ in 2004, development of has stopped on these incorporated projects. - Paul Meurer's SQL/ODBC - Cadabra's Oracle interface -CLSQL's home is http://clsql.b9.com. +CLSQL's home is http://clsql.kpe.io. Documentation is available as a PDF file in doc/clsql.pdf and as HTML files in doc/html.tar.gz. @@ -24,7 +24,7 @@ CONTRIBUTING ------------ If you would like to report a bug please do so through the clsql -mailing list. http://lists.b9.com/mailman/listinfo/CLSQL +mailing list. http://lists.kpe.io/mailman/listinfo/CLSQL Patches are welcome. It will be much easier for us to incorporate if you use [git](http://git-scm.com/). Please keep distinct changes in diff --git a/db-postgresql-socket/postgresql-socket-api.lisp b/db-postgresql-socket/postgresql-socket-api.lisp index 879e5bb..40dc86a 100644 --- a/db-postgresql-socket/postgresql-socket-api.lisp +++ b/db-postgresql-socket/postgresql-socket-api.lisp @@ -234,6 +234,14 @@ socket interface" (int32 pid) (int32 key)) +(defun read-bytes (socket length) + "Read a byte array of the given length from a stream." + (declare (type stream socket) + (type fixnum length) + (optimize (speed 3) (safety 0))) + (let ((result (make-array length :element-type '(unsigned-byte 8)))) + (read-sequence result socket) + result)) (defun read-socket-sequence (stream length &optional (allow-wide t)) (declare (stream stream) @@ -487,10 +495,16 @@ troubles." :database database :user user :password (or password "")))) -(defun encrypt-md5 (plaintext salt) - (string-downcase - (format nil "~{~2,'0X~}" - (coerce (md5sum-string (concatenate 'string plaintext salt)) 'list)))) +(defun byte-sequence-to-hex-string (sequence) + (string-downcase (format nil "~{~2,'0X~}" (coerce sequence 'list)))) + +(defun encrypt-password-md5 (password user salt) + (let ((pass1 (byte-sequence-to-hex-string + (md5::md5sum-string (concatenate 'string password user))))) + (byte-sequence-to-hex-string + (md5:md5sum-sequence (concatenate '(vector (unsigned-byte 8)) + (map '(vector (unsigned-byte 8)) #'char-code pass1) + salt))))) (defun reopen-postgresql-connection (connection) "Reopen the given PostgreSQL connection. Closes any existing @@ -532,10 +546,11 @@ connection, if it is still open." (postgresql-connection-password connection) salt))) (force-output socket)) (5 - (let ((salt (read-socket-sequence socket 4 nil))) - (let* ((pwd2 (encrypt-md5 (postgresql-connection-password connection) - (postgresql-connection-user connection))) - (pwd (encrypt-md5 pwd2 salt))) + (let ((salt (read-bytes socket 4))) + (let ((pwd (encrypt-password-md5 + (postgresql-connection-password connection) + (postgresql-connection-user connection) + salt))) (send-encrypted-password-message socket (concatenate 'string "md5" pwd)))) diff --git a/db-postgresql-socket/postgresql-socket-package.lisp b/db-postgresql-socket/postgresql-socket-package.lisp index 718667b..fbedb51 100644 --- a/db-postgresql-socket/postgresql-socket-package.lisp +++ b/db-postgresql-socket/postgresql-socket-package.lisp @@ -19,7 +19,7 @@ #+lispworks (require "comm") (defpackage #:postgresql-socket - (:use #:cl md5) + (:use #:cl #:md5) (:export #:pgsql-ftype #:pgsql-ftype#bytea #:pgsql-ftype#int2 @@ -56,4 +56,3 @@ #:copy-cursor-row #:skip-cursor-row )) - diff --git a/debian/changelog b/debian/changelog index 6cceaad..9ab9dac 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +cl-sql (6.6.3-1) unstable; urgency=medium + + * New upstream + + -- Kevin M. Rosenberg Mon, 30 Mar 2015 14:46:53 -0600 + cl-sql (6.6.2-1) unstable; urgency=medium * New upstream diff --git a/debian/control b/debian/control index 524a4c9..8a681c1 100644 --- a/debian/control +++ b/debian/control @@ -4,9 +4,9 @@ Priority: extra Maintainer: Kevin M. Rosenberg Build-Depends: dh-lisp, debhelper (>= 7.0.0), libmysqlclient-dev, libpq-dev Standards-Version: 3.9.6 -Homepage: http://clsql.b9.com/ -Vcs-Git: git://git.b9.com/clsql.git -Vcs-Browser: http://git.b9.com/?p=clsql.git +Homepage: http://clsql.kpe.io/ +Vcs-Git: git://git.kpe.io/clsql.git +Vcs-Browser: http://git.kpe.io/?p=clsql.git Package: cl-sql Architecture: all diff --git a/debian/copyright b/debian/copyright index f9364eb..71a7cb7 100644 --- a/debian/copyright +++ b/debian/copyright @@ -1,7 +1,7 @@ Debian Copyright Section ======================== -Upstream Source URL: http://files.b9.com/clsql +Upstream Source URL: http://files.kpe.io/clsql Upstream Author: Kevin M. Rosenberg Debian Maintainer: (Same as upstream) diff --git a/debian/upload.sh b/debian/upload.sh old mode 100755 new mode 100644 index c5d401e..c44c009 --- a/debian/upload.sh +++ b/debian/upload.sh @@ -1,4 +1,4 @@ #!/bin/bash -e -dup clsql -Ufiles.b9.com -D/home/ftp/clsql -su \ +dup clsql -Ufiles.kpe.io -D/home/ftp/clsql -su \ -C"(umask 022; cd /srv/www/html/clsql; make install; find . -type d |xargs chmod go+rx; find . -type f | xargs chmod go+r)" $* diff --git a/debian/watch b/debian/watch index b697ecb..1b92d46 100644 --- a/debian/watch +++ b/debian/watch @@ -1,2 +1,2 @@ version=3 -http://files.b9.com/clsql/clsql-([\d\.]*)\.tar\.gz debian uupdate +http://files.kpe.io/clsql/clsql-([\d\.]*)\.tar\.gz debian uupdate diff --git a/doc/clsql.pdf b/doc/clsql.pdf index 4a5cc4c..0c9036d 100644 Binary files a/doc/clsql.pdf and b/doc/clsql.pdf differ diff --git a/doc/intro.xml b/doc/intro.xml index eb10c69..936cf59 100644 --- a/doc/intro.xml +++ b/doc/intro.xml @@ -86,7 +86,7 @@ &uffi; &clsql; uses &uffi; + url="http://uffi.kpe.io/">&uffi; as a Foreign Function Interface (FFI) to support multiple &cl; implementations. @@ -96,7 +96,7 @@ &md5; &clsql;'s postgresql-socket interface uses Pierre Mai's - md5 + md5 module. diff --git a/tests/README b/tests/README index b3f6efe..aa6a9a6 100644 --- a/tests/README +++ b/tests/README @@ -7,7 +7,7 @@ each database type to be tested. There is an example file in contained in CLSQL's examples directory. These tests require the downloading of the rt package from -http://files.b9.com/. +http://files.kpe.io/. Load clsql.asd or put it somewhere where ASDF can find it and call: