Update domain name to kpe.io
authorKevin M. Rosenberg <kevin@rosenberg.net>
Sat, 29 Aug 2015 06:15:58 +0000 (00:15 -0600)
committerKevin M. Rosenberg <kevin@rosenberg.net>
Sat, 29 Aug 2015 06:15:58 +0000 (00:15 -0600)
13 files changed:
ChangeLog
NEWS
README
db-postgresql-socket/postgresql-socket-api.lisp
db-postgresql-socket/postgresql-socket-package.lisp
debian/changelog
debian/control
debian/copyright
debian/upload.sh [changed mode: 0755->0644]
debian/watch
doc/clsql.pdf
doc/intro.xml
tests/README

index 2bc632f528122353b3038a0d31585aecd54e59b9..86362c5e6fd31d0439861650abf7d424664634fd 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-08-12 Kevin Rosenberg <kevin@rosenberg.net>
+       * 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 <kevin@rosenberg.net>
        * Version 6.6.2 release
        * db-oracle/oracle-sql.lisp: Remove extra hyphen, thanks to
diff --git a/NEWS b/NEWS
index d1e96f25f9eaca933445a72a760e3d1a5129078d..b69ad0003e8f0bc53eb5637ef6449996f2db9ec4 100644 (file)
--- 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 3caff9f6076f1c81d267ba25bf115233c8314212..8fdfd89788b7aa24018534db65295363c7f604ab 100644 (file)
--- 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
index 879e5bb2a0ede5a358f45e88dad9205676790c87..40dc86a780d46d88c1a146b7ecbced867cc6eaee 100644 (file)
@@ -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))))
index 718667be5984cf62da410d111c460416254e92c9..fbedb5157cf2494bf0ecc59e905a47aa2bad7e68 100644 (file)
@@ -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
            ))
-
index 6cceaad7d9802e8d2f09d1c59ee7123f81f924dd..9ab9dac398d1686e014fc1a9eefa792887591e58 100644 (file)
@@ -1,3 +1,9 @@
+cl-sql (6.6.3-1) unstable; urgency=medium
+
+  * New upstream
+
+ -- Kevin M. Rosenberg <kmr@debian.org>  Mon, 30 Mar 2015 14:46:53 -0600
+
 cl-sql (6.6.2-1) unstable; urgency=medium
 
   * New upstream
index 524a4c9f12c0f6c1368c59e990393f035dd6e195..8a681c1b911147044c8b1912322596b2656b96cc 100644 (file)
@@ -4,9 +4,9 @@ Priority: extra
 Maintainer: Kevin M. Rosenberg <kmr@debian.org>
 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
index f9364eb4694a399ca38b7b653c6161ce4b30fdec..71a7cb7dd16fda600f327f0f716ca5149b1166f0 100644 (file)
@@ -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 <kmr@debian.org>
 Debian Maintainer: (Same as upstream)
 
old mode 100755 (executable)
new mode 100644 (file)
index c5d401e..c44c009
@@ -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)" $*
index b697ecb3e9bf97ecadd1484ca03ebef4a7ecd9f8..1b92d46343b21d7633f6d7086ba79ed42ddcc279 100644 (file)
@@ -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
index 4a5cc4ce611dfb3e506d2244c757cd4b6d95bfb2..0c9036d7712b41f304105f64454b866be021a5ee 100644 (file)
Binary files a/doc/clsql.pdf and b/doc/clsql.pdf differ
index eb10c69e7f868bc00a8d27a4fac8d4044698a3ff..936cf59e9acd8d5c14cf7d91f690b32d0ee7996b 100644 (file)
@@ -86,7 +86,7 @@
       <title>&uffi;</title>
       <para>
        &clsql; uses <ulink
-       url="http://uffi.b9.com/"><citetitle>&uffi;</citetitle></ulink>
+       url="http://uffi.kpe.io/"><citetitle>&uffi;</citetitle></ulink>
        as a <emphasis>Foreign Function Interface</emphasis>
        (<glossterm linkend="gloss-ffi">FFI</glossterm>) to support
        multiple &cl; implementations.
@@ -96,7 +96,7 @@
     <sect2>
       <title>&md5;</title>
       <para>&clsql;'s postgresql-socket interface uses Pierre Mai's 
-       <ulink url="http://files.b9.com/md5/">md5</ulink>
+       <ulink url="http://files.kpe.io/md5/">md5</ulink>
        module.
       </para>       
     </sect2>
index b3f6efe59d6057b7a9f7c99c37a257e0120d831f..aa6a9a691119a30cbab7362d54ff214d5a54f1af 100644 (file)
@@ -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: