--- mqtt/src/daemon.c 2012/04/26 08:20:20 1.2.2.17 +++ mqtt/src/daemon.c 2012/05/03 13:39:34 1.2.2.20 @@ -126,10 +126,10 @@ stopSession(struct tagSession *sess) free(msg.msg_base); ioDEBUG(1, "Close socket=%d", sess->sess_sock); - finiSession(sess); - call.LOG(logg, "Session %s stopped from %s for user %s.\n", sess->sess_cid, sess->sess_addr, sess->sess_user); + + finiSession(sess); } static void * @@ -176,6 +176,9 @@ thrSession(struct tagSession *sess) finiSession(sess); locKill ^= locKill; continue; + case MQTT_TYPE_SUBSCRIBE: + case MQTT_TYPE_PINGREQ: + break; case MQTT_TYPE_PUBLISH: ioDEBUG(5, "Exec PUBLISH topic QoS=%d", hdr->mqtt_msg.qos); /* @@ -185,16 +188,8 @@ thrSession(struct tagSession *sess) break; case MQTT_TYPE_PUBREL: break; - case MQTT_TYPE_SUBSCRIBE: - break; case MQTT_TYPE_UNSUBSCRIBE: break; - case MQTT_TYPE_PINGREQ: - ioDEBUG(5, "Exec PINGREQ session"); - break; - case MQTT_TYPE_PINGRESP: - ioDEBUG(5, "Exec PINGRESP session"); - break; default: ioDEBUG(5, "Error:: Session %s, wrong command %d - DISCARDED", sess->sess_cid, hdr->mqtt_msg.type); @@ -394,7 +389,6 @@ Run(int sock) schedPolling(root, &pl, NULL); schedRun(root, &Kill); - sleep(1); pthread_attr_destroy(&attr);