|
|
| 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); |