From d86fc4071ccb8590d922e3456c5c80c0f7bb9d6f Mon Sep 17 00:00:00 2001 From: Kristian Høgsberg Date: Mon, 17 May 2004 22:19:04 +0000 Subject: 2004-05-17 Kristian Høgsberg MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Remove base64 encoding, replace with hex encoding. Original patch from trow@ximian.com, added error handling. * dbus/dbus-string.c (_dbus_string_base64_encode) (_dbus_string_base64_decode): Remove. (_dbus_string_hex_decode): Add end_return argument so we can distinguish between OOM and invalid hex encoding. (_dbus_string_test): Remove base64 tests and add test case for invalid hex. * dbus/dbus-keyring.c, dbus/dbus-auth-script.c, dbus/dbus-auth.c: Replace base64 with hex. * test/data/auth/invalid-hex-encoding.auth-script: New test case for invalid hex encoded data in auth protocol. --- doc/TODO | 4 ---- doc/dbus-specification.xml | 2 +- doc/dbus-test-plan.xml | 2 +- 3 files changed, 2 insertions(+), 6 deletions(-) (limited to 'doc') diff --git a/doc/TODO b/doc/TODO index c35b25e7..68051db4 100644 --- a/doc/TODO +++ b/doc/TODO @@ -118,10 +118,6 @@ - recursive dispatch, see dbus_connection_dispatch() - - the auth protocol may as well use hex encoding instead of - base64, then we can dump the base64 implementation and - save some bloat. - - Better error checking for bogus configuration files. Currently if a configuration file tries to include itself the bus crashes on start. We should probably have a check against this. diff --git a/doc/dbus-specification.xml b/doc/dbus-specification.xml index 7a09a5cf..aacb480a 100644 --- a/doc/dbus-specification.xml +++ b/doc/dbus-specification.xml @@ -911,7 +911,7 @@ DATA Command The DATA command may come from either client or server, and simply - contains a base64-encoded block of data to be interpreted + contains a hex-encoded block of data to be interpreted according to the SASL mechanism in use. diff --git a/doc/dbus-test-plan.xml b/doc/dbus-test-plan.xml index bcb9b3e6..b69f9405 100644 --- a/doc/dbus-test-plan.xml +++ b/doc/dbus-test-plan.xml @@ -135,7 +135,7 @@ ## this tests a successful auth of type EXTERNAL SERVER - SEND 'AUTH EXTERNAL USERNAME_BASE64' + SEND 'AUTH EXTERNAL USERNAME_HEX' EXPECT_COMMAND OK EXPECT_STATE WAITING_FOR_INPUT SEND 'BEGIN' -- cgit