=== ChangeLog
==================================================================
--- ChangeLog	(revision 14386)
+++ ChangeLog	(local)
@@ -4,6 +4,8 @@
 	(gnome_keyring_set_network_password_sync)
 	(gnome_keyring_find_network_password_sync): Allow most parameters to
 	be None/NULL.
+	(gnome_keyring_set_network_password_sync): All parameters except
+	password are now optional.
 	(gnome_keyring_find_network_password_sync): All parameters are now
 	optional.
 
=== gnomekeyring/gnomekeyring.override
==================================================================
--- gnomekeyring/gnomekeyring.override	(revision 14386)
+++ gnomekeyring/gnomekeyring.override	(local)
@@ -311,16 +311,28 @@
 {
     static char *kwlist[] = { "keyring", "user", "domain", "server", "object",
                               "protocol", "authtype", "port", "password", NULL };
-    char *keyring, *user, *domain, *server, *object, *protocol, *authtype, *password;
-    unsigned long port;
+    char *keyring = NULL;
+    char *user = NULL;
+    char *domain = NULL;
+    char *server = NULL;
+    char *object = NULL;
+    char *protocol = NULL;
+    char *authtype = NULL;
+    char *password = NULL;
+    unsigned long port = 0;
     gint ret;
     guint32 item_id;
 
-    if (!PyArg_ParseTupleAndKeywords(args, kwargs,"zzzzzzzks:set_network_password_sync", kwlist,
+    if (!PyArg_ParseTupleAndKeywords(args, kwargs,"|zzzzzzzks:set_network_password_sync", kwlist,
                                      &keyring, &user, &domain, &server, &object, &protocol,
                                      &authtype, &port, &password))
         return NULL;
 
+    if (!password) {
+        PyErr_SetString(PyExc_TypeError, "set_network_password_sync() argument 'password' must be supplied");
+        return NULL;
+    }
+
     pyg_begin_allow_threads;
     ret = gnome_keyring_set_network_password_sync(keyring, user, domain, server, object,
                                                   protocol, authtype, port, password, &item_id);
