Diff for /mqtt/src/daemon.c between versions 1.1.2.22 and 1.1.2.23

version 1.1.2.22, 2011/12/15 12:58:49 version 1.1.2.23, 2011/12/16 02:09:20
Line 145  startSession(sched_task_t *task) Line 145  startSession(sched_task_t *task)
                 ioDEBUG(0, "Login:: ALLOWED for username %s ...", sess->sess_user);                  ioDEBUG(0, "Login:: ALLOWED for username %s ...", sess->sess_user);
                 ret = MQTT_RETCODE_ACCEPTED;                  ret = MQTT_RETCODE_ACCEPTED;
         }          }
           if (call.FiniSessPUB(&cfg, pub, sess->sess_cid, sess->sess_user, "%") > 0) {
                   // TODO: disconnect client
           }
           if (call.InitSessPUB(&cfg, pub, sess->sess_cid, sess->sess_user, sess->sess_addr, 
                                   sess->sess_will.flag, sess->sess_will.topic, sess->sess_will.msg, 
                                   sess->sess_will.qos, sess->sess_will.retain) == -1) {
                   ioDEBUG(0, "Session %s DENIED for username %s", sess->sess_cid, sess->sess_user);
                   ret = MQTT_RETCODE_DENIED;
                   goto end;
           } else {
                   ioDEBUG(0, "Session %s from %s and username %s is started", 
                                   sess->sess_cid, sess->sess_addr, sess->sess_user);
                   ret = MQTT_RETCODE_ACCEPTED;
           }
   
         ret = mqtt_msgCONNACK(&msg, ret);          ret = mqtt_msgCONNACK(&msg, ret);
         if ((ret = send(sess->sess_sock, msg.msg_base, ret, 0)) == -1) {          if ((ret = send(sess->sess_sock, msg.msg_base, ret, 0)) == -1) {
Line 166  startSession(sched_task_t *task) Line 180  startSession(sched_task_t *task)
         pthread_create(&sess->sess_tid, &attr, (void*(*)(void*)) thrSession, sess);          pthread_create(&sess->sess_tid, &attr, (void*(*)(void*)) thrSession, sess);
         pthread_mutex_unlock(&mtx_sess);          pthread_mutex_unlock(&mtx_sess);
   
        ioDEBUG(1, "ConnID=%s(%s) for %s login OK!", sess->sess_cid, sess->sess_user, sess->sess_addr);        call.LOG(logg, "Session %s started from %s for user %s OK!\n", sess->sess_cid, 
                         sess->sess_addr, sess->sess_user);
   
         pthread_attr_destroy(&attr);          pthread_attr_destroy(&attr);
         return NULL;          return NULL;
Line 210  Run(int sock) Line 225  Run(int sock)
         int cli;          int cli;
         pthread_t tid;          pthread_t tid;
         ait_val_t *v;          ait_val_t *v;
           char str[STRSIZ];
   
         ioTRACE(1);          ioTRACE(1);
   
Line 236  Run(int sock) Line 252  Run(int sock)
                 if (!v) {                  if (!v) {
                         ioLIBERR(mqtt);                          ioLIBERR(mqtt);
                         break;                          break;
                } else                } else {
                        io_n2addr(&sa, v);                        memset(str, 0, sizeof str);
                ioDEBUG(1, "Connected client with socket=%d from %s:%d", cli,                         snprintf(str, sizeof str, "%s:%hu", io_n2addr(&sa, v), io_n2port(&sa));
                                AIT_GET_STR(v), io_n2port(&sa));                        AIT_SET_STR(v, str);
                 }
                 ioDEBUG(1, "Connected client with socket=%d from %s", cli, AIT_GET_STR(v));
   
                 if (!schedRead(root, startSession, v, cli)) {                  if (!schedRead(root, startSession, v, cli)) {
                         io_freeVar(v);                          io_freeVar(v);

Removed from v.1.1.2.22  
changed lines
  Added in v.1.1.2.23


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>