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
 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.
 
 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!
 
 
 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.
 
 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.
 
 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
 
   - 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.
 
 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
 ------------
 
 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
 
 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))
 
   (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)
 
 (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 ""))))
 
                                :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
 
 (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
                          (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))))
                          (send-encrypted-password-message
                           socket
                           (concatenate 'string "md5" pwd))))
index 718667be5984cf62da410d111c460416254e92c9..fbedb5157cf2494bf0ecc59e905a47aa2bad7e68 100644 (file)
@@ -19,7 +19,7 @@
 #+lispworks (require "comm")
 
 (defpackage #:postgresql-socket
 #+lispworks (require "comm")
 
 (defpackage #:postgresql-socket
-  (:use #:cl md5)
+  (:use #:cl #:md5)
   (:export #:pgsql-ftype
            #:pgsql-ftype#bytea
            #:pgsql-ftype#int2
   (:export #:pgsql-ftype
            #:pgsql-ftype#bytea
            #:pgsql-ftype#int2
@@ -56,4 +56,3 @@
            #:copy-cursor-row
            #:skip-cursor-row
            ))
            #: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
 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
 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
 
 Package: cl-sql
 Architecture: all
index f9364eb4694a399ca38b7b653c6161ce4b30fdec..71a7cb7dd16fda600f327f0f716ca5149b1166f0 100644 (file)
@@ -1,7 +1,7 @@
 Debian Copyright Section
 ========================
 
 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)
 
 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
 
 #!/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)" $*
     -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
 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
       <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.
        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 
     <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>
        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
 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:
 
 Load clsql.asd or put it somewhere where ASDF can find it
 and call: