/[debian]/bti/trunk/bti.c
ViewVC logotype

Diff of /bti/trunk/bti.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2456 by gregoa, Fri Mar 18 11:16:05 2011 UTC revision 2457 by gregoa, Tue Mar 22 16:17:37 2011 UTC
# Line 324  static void parse_statuses(struct sessio Line 324  static void parse_statuses(struct sessio
324                          }                          }
325    
326                          if (user && text && created && id) {                          if (user && text && created && id) {
327                                  bti_output_line(session, user, id, created, text);                                  bti_output_line(session, user, id,
328                                                    created, text);
329                                  xmlFree(user);                                  xmlFree(user);
330                                  xmlFree(text);                                  xmlFree(text);
331                                  xmlFree(created);                                  xmlFree(created);
# Line 445  static int request_access_token(struct s Line 446  static int request_access_token(struct s
446  {  {
447          char *post_params = NULL;          char *post_params = NULL;
448          char *request_url = NULL;          char *request_url = NULL;
449          char *reply       = NULL;          char *reply       = NULL;
450          char *at_key      = NULL;          char *at_key      = NULL;
451          char *at_secret   = NULL;          char *at_secret   = NULL;
452          char *verifier    = NULL;          char *verifier    = NULL;
# Line 573  static int send_request(struct session * Line 574  static int send_request(struct session *
574    
575                          if (session->replyto)                          if (session->replyto)
576                                  curl_formadd(&formpost, &lastptr,                                  curl_formadd(&formpost, &lastptr,
577                                               CURLFORM_COPYNAME, "in_reply_to_status_id",                                               CURLFORM_COPYNAME,
578                                               CURLFORM_COPYCONTENTS, session->replyto,                                               "in_reply_to_status_id",
579                                                 CURLFORM_COPYCONTENTS,
580                                                 session->replyto,
581                                               CURLFORM_END);                                               CURLFORM_END);
582    
583                          curl_easy_setopt(curl, CURLOPT_HTTPPOST, formpost);                          curl_easy_setopt(curl, CURLOPT_HTTPPOST, formpost);
# Line 641  static int send_request(struct session * Line 644  static int send_request(struct session *
644                  curl_easy_setopt(curl, CURLOPT_WRITEDATA, curl_buf);                  curl_easy_setopt(curl, CURLOPT_WRITEDATA, curl_buf);
645                  if (!session->dry_run) {                  if (!session->dry_run) {
646                          res = curl_easy_perform(curl);                          res = curl_easy_perform(curl);
647                          if (res && !session->background) {                          if (!session->background) {
648                                  fprintf(stderr, "error(%d) trying to perform "                                  xmlDocPtr doc;
649                                                  "operation\n", res);                                  xmlNodePtr current;
650                                  return -EINVAL;  
651                                    if (res) {
652                                            fprintf(stderr, "error(%d) trying to "
653                                                    "perform operation\n", res);
654                                            return -EINVAL;
655                                    }
656    
657                                    doc = xmlReadMemory(curl_buf->data,
658                                                        curl_buf->length,
659                                                        "response.xml", NULL,
660                                                        XML_PARSE_NOERROR);
661                                    if (doc == NULL)
662                                            return -EINVAL;
663    
664                                    current = xmlDocGetRootElement(doc);
665                                    if (current == NULL) {
666                                            fprintf(stderr, "empty document\n");
667                                            xmlFreeDoc(doc);
668                                            return -EINVAL;
669                                    }
670    
671                                    if (xmlStrcmp(current->name, (const xmlChar *)"status")) {
672                                            fprintf(stderr, "unexpected document type\n");
673                                            xmlFreeDoc(doc);
674                                            return -EINVAL;
675                                    }
676    
677                                    xmlFreeDoc(doc);
678                          }                          }
679                  }                  }
680    
# Line 1220  int main(int argc, char *argv[], char *e Line 1250  int main(int argc, char *argv[], char *e
1250                                  session->action = ACTION_PUBLIC;                                  session->action = ACTION_PUBLIC;
1251                          else if (strcasecmp(optarg, "group") == 0)                          else if (strcasecmp(optarg, "group") == 0)
1252                                  session->action = ACTION_GROUP;                                  session->action = ACTION_GROUP;
1253                          else if (strcasecmp(optarg,"retweet") == 0)                          else if (strcasecmp(optarg, "retweet") == 0)
1254                                  session->action = ACTION_RETWEET;                                  session->action = ACTION_RETWEET;
1255                          else                          else
1256                                  session->action = ACTION_UNKNOWN;                                  session->action = ACTION_UNKNOWN;
# Line 1314  int main(int argc, char *argv[], char *e Line 1344  int main(int argc, char *argv[], char *e
1344                  if (!session->consumer_key || !session->consumer_secret) {                  if (!session->consumer_key || !session->consumer_secret) {
1345                          if (session->action == ACTION_USER ||                          if (session->action == ACTION_USER ||
1346                                          session->action == ACTION_PUBLIC) {                                          session->action == ACTION_PUBLIC) {
1347                                  /* Some actions may still work without authentication */                                  /*
1348                                     * Some actions may still work without
1349                                     * authentication
1350                                     */
1351                                  session->guest = 1;                                  session->guest = 1;
1352                          } else {                          } else {
1353                                  fprintf(stderr,                                  fprintf(stderr,
# Line 1370  int main(int argc, char *argv[], char *e Line 1403  int main(int argc, char *argv[], char *e
1403                          fprintf(stdout, "Status ID to retweet: ");                          fprintf(stdout, "Status ID to retweet: ");
1404                          rtid = get_string_from_stdin();                          rtid = get_string_from_stdin();
1405                          session->retweet = zalloc(strlen(rtid) + 10);                          session->retweet = zalloc(strlen(rtid) + 10);
1406                          sprintf(session->retweet,"%s", rtid);                          sprintf(session->retweet, "%s", rtid);
1407                          free(rtid);                          free(rtid);
1408                  }                  }
1409    

Legend:
Removed from v.2456  
changed lines
  Added in v.2457

  ViewVC Help
Powered by ViewVC 1.1.26