aboutsummaryrefslogtreecommitdiffstats
path: root/lib/oauth.h
diff options
context:
space:
mode:
authorWilmer van der Gaast <wilmer@gaast.net>2010-04-27 23:42:07 +0100
committerWilmer van der Gaast <wilmer@gaast.net>2010-04-27 23:42:07 +0100
commit18dbb20242719f7537ad1a18a9a3befa2eefd502 (patch)
tree1e73b6b40113723e9997cc1763122eaccdd48b15 /lib/oauth.h
parentee84bdbc2510fa09bd0f67e14d06e69c2626d0f1 (diff)
Valgrind cleanup.
Diffstat (limited to 'lib/oauth.h')
-rw-r--r--lib/oauth.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/oauth.h b/lib/oauth.h
index 30486b98..a61650cc 100644
--- a/lib/oauth.h
+++ b/lib/oauth.h
@@ -24,7 +24,10 @@
/* http://oauth.net/core/1.0a/ */
struct oauth_info;
-typedef void (*oauth_cb)( struct oauth_info * );
+
+/* Callback function called twice during the access token request process.
+ Return FALSE if something broke and the process must be aborted. */
+typedef gboolean (*oauth_cb)( struct oauth_info * );
typedef enum
{
@@ -52,13 +55,13 @@ struct oauth_info
Request an initial anonymous token which can be used to construct an
authorization URL for the user. This is passed to the callback function
in a struct oauth_info. */
-void *oauth_request_token( const char *url, oauth_cb func, void *data );
+struct oauth_info *oauth_request_token( const char *url, oauth_cb func, void *data );
/* http://oauth.net/core/1.0a/#auth_step3 (section 6.3)
The user gets a PIN or so which we now exchange for the final access
token. This is passed to the callback function in the same
struct oauth_info. */
-void *oauth_access_token( const char *url, const char *pin, struct oauth_info *st );
+void oauth_access_token( const char *url, const char *pin, struct oauth_info *st );
/* http://oauth.net/core/1.0a/#anchor12 (section 7)
Generate an OAuth Authorization: HTTP header. access_token should be
@@ -66,3 +69,6 @@ void *oauth_access_token( const char *url, const char *pin, struct oauth_info *s
whatever's going to be in the POST body of the request. GET args will
automatically be grabbed from url. */
char *oauth_http_header( char *access_token, const char *method, const char *url, char *args );
+
+/* Shouldn't normally be required unless the process is aborted by the user. */
+void oauth_info_free( struct oauth_info *info );