| 60 purple_cipher_append(cipher, (guchar *)message, strlen(message)); |
60 purple_cipher_append(cipher, (guchar *)message, strlen(message)); |
| 61 purple_cipher_digest(cipher, digest, sizeof(digest)); |
61 purple_cipher_digest(cipher, digest, sizeof(digest)); |
| 62 |
62 |
| 63 g_object_unref(cipher); |
63 g_object_unref(cipher); |
| 64 g_object_unref(hash); |
64 g_object_unref(hash); |
| 65 |
65 |
| 66 return purple_base64_encode(digest, sizeof(digest)); |
66 return purple_base64_encode(digest, sizeof(digest)); |
| 67 } |
67 } |
| 68 |
68 |
| 69 static char *gg_oauth_generate_signature(const char *method, const char *url, const char *request, const char *consumer_secret, const char *token_secret) |
69 static char * |
| |
70 gg_oauth_generate_signature(const char *method, const char *url, |
| |
71 const char *request, const char *consumer_secret, |
| |
72 const char *token_secret) |
| 70 { |
73 { |
| 71 char *text, *key, *res; |
74 char *text, *key, *res; |
| 72 gchar *url_e, *request_e, *consumer_secret_e, *token_secret_e; |
75 gchar *url_e, *request_e, *consumer_secret_e, *token_secret_e; |
| 73 |
76 |
| 74 url_e = g_uri_escape_string(url, "?", FALSE); |
77 url_e = g_uri_escape_string(url, "?", FALSE); |
| 90 free(text); |
93 free(text); |
| 91 |
94 |
| 92 return res; |
95 return res; |
| 93 } |
96 } |
| 94 |
97 |
| 95 char *gg_oauth_generate_header(const char *method, const char *url, const char *consumer_key, const char *consumer_secret, const char *token, const char *token_secret) |
98 char * |
| |
99 gg_oauth_generate_header(const char *method, const char *url, |
| |
100 const char *consumer_key, const char *consumer_secret, |
| |
101 const char *token, const char *token_secret) |
| 96 { |
102 { |
| 97 char *request, *signature, *res; |
103 char *request, *signature, *res; |
| 98 char nonce[80], timestamp[16]; |
104 char nonce[80], timestamp[16]; |
| 99 gg_oauth_parameter_t *params = NULL; |
105 gg_oauth_parameter_t *params = NULL; |
| 100 |
106 |