[libsoup] Remove SoupPasswordManager from the stable API
- From: Dan Winship <danw src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [libsoup] Remove SoupPasswordManager from the stable API
- Date: Mon, 7 Sep 2009 22:38:07 +0000 (UTC)
commit cffc17dbb59e76a1623f0bd01f44e3e79df35fe7
Author: Dan Winship <danw gnome org>
Date: Mon Sep 7 09:57:26 2009 -0400
Remove SoupPasswordManager from the stable API
See http://bugzilla.gnome.org/show_bug.cgi?id=594377
libsoup/Makefile.am | 3 +-
libsoup/soup-auth.c | 2 +
libsoup/soup-auth.h | 4 ++
libsoup/soup-gnome-features.h | 5 ++
libsoup/soup-gnome.h | 1 -
libsoup/soup-password-manager-gnome.c | 8 +--
libsoup/soup-password-manager-gnome.h | 8 +--
libsoup/soup-password-manager.c | 2 +
libsoup/soup-password-manager.h | 4 ++
libsoup/soup-session-async.c | 2 +
libsoup/soup-session-sync.c | 2 +
tests/get.c | 86 ---------------------------------
12 files changed, 26 insertions(+), 101 deletions(-)
---
diff --git a/libsoup/Makefile.am b/libsoup/Makefile.am
index a436d4e..c25b534 100644
--- a/libsoup/Makefile.am
+++ b/libsoup/Makefile.am
@@ -171,8 +171,7 @@ libsoupgnomeincludedir = $(includedir)/libsoup-gnome-2.4/libsoup
libsoupgnomeinclude_HEADERS = \
soup-cookie-jar-sqlite.h\
soup-gnome.h \
- soup-gnome-features.h \
- soup-password-manager-gnome.h
+ soup-gnome-features.h
lib_LTLIBRARIES += libsoup-gnome-2.4.la
diff --git a/libsoup/soup-auth.c b/libsoup/soup-auth.c
index a3f2ae7..774cf2c 100644
--- a/libsoup/soup-auth.c
+++ b/libsoup/soup-auth.c
@@ -9,6 +9,8 @@
#include <config.h>
#endif
+#define LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY
+
#include <string.h>
#include "soup-auth.h"
diff --git a/libsoup/soup-auth.h b/libsoup/soup-auth.h
index 1259df8..453f51d 100644
--- a/libsoup/soup-auth.h
+++ b/libsoup/soup-auth.h
@@ -72,12 +72,14 @@ const char *soup_auth_get_host (SoupAuth *auth);
const char *soup_auth_get_realm (SoupAuth *auth);
char *soup_auth_get_info (SoupAuth *auth);
+#ifdef LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY
GSList *soup_auth_get_saved_users (SoupAuth *auth);
const char *soup_auth_get_saved_password (SoupAuth *auth,
const char *user);
void soup_auth_save_password (SoupAuth *auth,
const char *username,
const char *password);
+#endif
void soup_auth_authenticate (SoupAuth *auth,
const char *username,
@@ -92,9 +94,11 @@ GSList *soup_auth_get_protection_space (SoupAuth *auth,
void soup_auth_free_protection_space (SoupAuth *auth,
GSList *space);
+#ifdef LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY
void soup_auth_has_saved_password (SoupAuth *auth,
const char *username,
const char *password);
+#endif
G_END_DECLS
diff --git a/libsoup/soup-gnome-features.h b/libsoup/soup-gnome-features.h
index d722d73..8090978 100644
--- a/libsoup/soup-gnome-features.h
+++ b/libsoup/soup-gnome-features.h
@@ -16,6 +16,11 @@ GType soup_proxy_resolver_gnome_get_type (void);
GType soup_gnome_features_2_26_get_type (void);
#define SOUP_TYPE_GNOME_FEATURES_2_26 (soup_gnome_features_2_26_get_type ())
+#ifdef LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY
+GType soup_password_manager_gnome_get_type (void);
+#define SOUP_TYPE_PASSWORD_MANAGER_GNOME (soup_password_manager_gnome_get_type ())
+#endif /* LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY */
+
G_END_DECLS
#endif /* SOUP_GNOME_FEATURES_H */
diff --git a/libsoup/soup-gnome.h b/libsoup/soup-gnome.h
index 6703cf0..a2134a4 100644
--- a/libsoup/soup-gnome.h
+++ b/libsoup/soup-gnome.h
@@ -10,6 +10,5 @@
#include <libsoup/soup-cookie-jar-sqlite.h>
#include <libsoup/soup-gnome-features.h>
-#include <libsoup/soup-password-manager-gnome.h>
#endif /* SOUP_GNOME_H */
diff --git a/libsoup/soup-password-manager-gnome.c b/libsoup/soup-password-manager-gnome.c
index 9b56eae..d376191 100644
--- a/libsoup/soup-password-manager-gnome.c
+++ b/libsoup/soup-password-manager-gnome.c
@@ -9,6 +9,8 @@
#include <config.h>
#endif
+#define LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY
+
#include "soup-password-manager-gnome.h"
#include "soup-auth.h"
#include "soup-session-feature.h"
@@ -52,12 +54,6 @@ soup_password_manager_gnome_interface_init (SoupPasswordManagerInterface *passwo
password_manager_interface->get_passwords_sync = get_passwords_sync;
}
-SoupPasswordManager *
-soup_password_manager_gnome_new (void)
-{
- return g_object_new (SOUP_TYPE_PASSWORD_MANAGER_GNOME, NULL);
-}
-
static void
save_password_callback (GnomeKeyringResult result, guint32 val, gpointer data)
diff --git a/libsoup/soup-password-manager-gnome.h b/libsoup/soup-password-manager-gnome.h
index ad6d362..290e3ec 100644
--- a/libsoup/soup-password-manager-gnome.h
+++ b/libsoup/soup-password-manager-gnome.h
@@ -6,9 +6,9 @@
#ifndef SOUP_PASSWORD_MANAGER_GNOME_H
#define SOUP_PASSWORD_MANAGER_GNOME_H 1
-#include <libsoup/soup-password-manager.h>
+#include "soup-password-manager.h"
+#include "soup-gnome-features.h"
-#define SOUP_TYPE_PASSWORD_MANAGER_GNOME (soup_password_manager_gnome_get_type ())
#define SOUP_PASSWORD_MANAGER_GNOME(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), SOUP_TYPE_PASSWORD_MANAGER_GNOME, SoupPasswordManagerGNOME))
#define SOUP_PASSWORD_MANAGER_GNOME_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SOUP_TYPE_PASSWORD_MANAGER_GNOME, SoupPasswordManagerGNOMEClass))
#define SOUP_IS_PASSWORD_MANAGER_GNOME(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), SOUP_TYPE_PASSWORD_MANAGER_GNOME))
@@ -25,8 +25,4 @@ typedef struct {
} SoupPasswordManagerGNOMEClass;
-GType soup_password_manager_gnome_get_type (void);
-
-SoupPasswordManager *soup_password_manager_gnome_new (void);
-
#endif /* SOUP_PASSWORD_MANAGER_GNOME_H */
diff --git a/libsoup/soup-password-manager.c b/libsoup/soup-password-manager.c
index 5654dc3..1ee9260 100644
--- a/libsoup/soup-password-manager.c
+++ b/libsoup/soup-password-manager.c
@@ -9,6 +9,8 @@
#include <config.h>
#endif
+#define LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY
+
#include "soup-password-manager.h"
#include "soup-session-feature.h"
diff --git a/libsoup/soup-password-manager.h b/libsoup/soup-password-manager.h
index 2cd0270..75f5cd8 100644
--- a/libsoup/soup-password-manager.h
+++ b/libsoup/soup-password-manager.h
@@ -6,6 +6,8 @@
#ifndef SOUP_PASSWORD_MANAGER_H
#define SOUP_PASSWORD_MANAGER_H 1
+#ifdef LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY
+
#include <libsoup/soup-types.h>
#include <gio/gio.h>
@@ -52,4 +54,6 @@ void soup_password_manager_get_passwords_sync (SoupPasswordManager *password_
SoupAuth *auth,
GCancellable *cancellable);
+#endif /* LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY */
+
#endif /* SOUP_PASSWORD_MANAGER_H */
diff --git a/libsoup/soup-session-async.c b/libsoup/soup-session-async.c
index 9d0ef71..731138c 100644
--- a/libsoup/soup-session-async.c
+++ b/libsoup/soup-session-async.c
@@ -9,6 +9,8 @@
#include <config.h>
#endif
+#define LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY
+
#include "soup-address.h"
#include "soup-session-async.h"
#include "soup-session-private.h"
diff --git a/libsoup/soup-session-sync.c b/libsoup/soup-session-sync.c
index 5eecabd..eba77e4 100644
--- a/libsoup/soup-session-sync.c
+++ b/libsoup/soup-session-sync.c
@@ -9,6 +9,8 @@
#include <config.h>
#endif
+#define LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY
+
#include "soup-address.h"
#include "soup-session-sync.h"
#include "soup-session-private.h"
diff --git a/tests/get.c b/tests/get.c
index a654ec4..b0e5c57 100644
--- a/tests/get.c
+++ b/tests/get.c
@@ -22,10 +22,6 @@
#include <libsoup/soup.h>
#endif
-#ifdef G_OS_UNIX
-#include <termios.h>
-#endif
-
static SoupSession *session;
static GMainLoop *loop;
static gboolean debug = FALSE;
@@ -78,83 +74,6 @@ get_url (const char *url)
}
static void
-authenticate (SoupSession *session, SoupMessage *msg,
- SoupAuth *auth, gpointer user_data)
-{
- char *uri;
- GSList *saved_users;
-#ifdef G_OS_UNIX
- struct termios t;
- int old_lflag;
-#endif
- char user[80], pwbuf[80];
- const char *password;
-
-#ifdef G_OS_UNIX
- if (tcgetattr (STDIN_FILENO, &t) != 0)
- return;
-#endif
-
- uri = soup_uri_to_string (soup_message_get_uri (msg), FALSE);
- fprintf (stderr, "Authentication required for %s:\n", uri);
- g_free (uri);
- fprintf (stderr, " Realm: %s, Auth type: %s\n",
- soup_auth_get_realm (auth), soup_auth_get_scheme_name (auth));
-
- saved_users = soup_auth_get_saved_users (auth);
- if (saved_users) {
- GSList *u;
-
- fprintf (stderr, " Passwords saved for: ");
- for (u = saved_users; u; u = u->next) {
- if (u != saved_users)
- fprintf (stderr, ", ");
- fprintf (stderr, "%s", (char *)u->data);
- }
- fprintf (stderr, "\n");
- }
- g_slist_free (saved_users);
-
- fprintf (stderr, " username: ");
- fflush (stderr);
-
- if (!fgets (user, sizeof (user), stdin) || user[0] == '\n')
- return;
- *strchr (user, '\n') = '\0';
-
- password = soup_auth_get_saved_password (auth, user);
- if (!password) {
- fprintf (stderr, " password: ");
- fflush (stderr);
-
-#ifdef G_OS_UNIX
- old_lflag = t.c_lflag;
- t.c_lflag = (t.c_lflag | ICANON | ECHONL) & ~ECHO;
- tcsetattr (STDIN_FILENO, TCSANOW, &t);
-#endif
-
- /* For some reason, fgets can return EINTR on
- * Linux if ECHO is false...
- */
- do
- password = fgets (pwbuf, sizeof (pwbuf), stdin);
- while (password == NULL && errno == EINTR);
-
-#ifdef G_OS_UNIX
- t.c_lflag = old_lflag;
- tcsetattr (STDIN_FILENO, TCSANOW, &t);
-#endif
-
- if (!password || pwbuf[0] == '\n')
- return;
- *strchr (pwbuf, '\n') = '\0';
- }
-
- soup_auth_authenticate (auth, user, password);
- soup_auth_save_password (auth, user, password);
-}
-
-static void
usage (void)
{
fprintf (stderr, "Usage: get [-c CAfile] [-p proxy URL] [-h] [-d] URL\n");
@@ -171,7 +90,6 @@ main (int argc, char **argv)
g_thread_init (NULL);
g_type_init ();
- g_set_application_name ("get");
method = SOUP_METHOD_GET;
@@ -226,7 +144,6 @@ main (int argc, char **argv)
SOUP_SESSION_SSL_CA_FILE, cafile,
#ifdef HAVE_GNOME
SOUP_SESSION_ADD_FEATURE_BY_TYPE, SOUP_TYPE_GNOME_FEATURES_2_26,
- SOUP_SESSION_ADD_FEATURE_BY_TYPE, SOUP_TYPE_PASSWORD_MANAGER_GNOME,
#endif
SOUP_SESSION_USER_AGENT, "get ",
NULL);
@@ -235,13 +152,10 @@ main (int argc, char **argv)
SOUP_SESSION_SSL_CA_FILE, cafile,
#ifdef HAVE_GNOME
SOUP_SESSION_ADD_FEATURE_BY_TYPE, SOUP_TYPE_GNOME_FEATURES_2_26,
- SOUP_SESSION_ADD_FEATURE_BY_TYPE, SOUP_TYPE_PASSWORD_MANAGER_GNOME,
#endif
SOUP_SESSION_USER_AGENT, "get ",
NULL);
}
- g_signal_connect (session, "authenticate",
- G_CALLBACK (authenticate), NULL);
/* Need to do this after creating the session, since adding
* SOUP_TYPE_GNOME_FEATURE_2_26 will add a proxy resolver, thereby
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]