Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Apr 25th, 2012  |  syntax: C  |  size: 0.76 KB  |  hits: 16  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. struct irc_msg_t {
  2.   char *prefix;
  3.   char *command;
  4.   char *params;
  5.   char *trailing;
  6. };
  7.  
  8. struct irc_msg_t *ParseIRC(char *line)
  9. {
  10.   struct irc_msg_t *irc_msg = (struct irc_msg_t *)malloc(sizeof(struct irc_msg_t));
  11.   char *ch, *sv_ptr;
  12.  
  13.   irc_msg->prefix = irc_msg->command = irc_msg->params = irc_msg->trailing = NULL;
  14.  
  15.   if(line[0] == ':') { /* check for prefix */
  16.     *line = line[1];
  17.     ch = strtok_r(line, " ", &sv_ptr); /* grab prefix */
  18.     if(ch != NULL)
  19.       irc_msg->prefix = strdup(ch);
  20.     else
  21.       return NULL; /* malformed IRC message */
  22.   }
  23.  
  24.   ch = strtok_r(NULL, " ", &sv_ptr); /* grab command */
  25.   irc_msg->command = strdup(ch);
  26.  
  27.   /* check for trailing */
  28.   /* todo */
  29.  
  30.   /* grab params */
  31.   /* todo */
  32.  
  33.   return irc_msg;
  34. }