version 1.2.2.11, 2012/04/25 12:04:30
|
version 1.2.2.12, 2012/04/25 13:08:15
|
Line 290 startSession(sched_task_t *task)
|
Line 290 startSession(sched_task_t *task)
|
ioTRACE(4); |
ioTRACE(4); |
|
|
assert(task); |
assert(task); |
printf("aaaaaaaaaaaaaaaaa\n"); |
|
fflush(stdout); |
|
|
|
if (!TASK_DATA(task)) { |
if (!TASK_DATA(task)) { |
/* flow from accept new clients */ |
/* flow from accept new clients */ |
Line 329 startSession(sched_task_t *task)
|
Line 327 startSession(sched_task_t *task)
|
sess->sess_will.flag = flg.will_flg; |
sess->sess_will.flag = flg.will_flg; |
} |
} |
|
|
printf("sql=%p\n", acc); |
|
fflush(stdout); |
|
/* check online table for user */ |
/* check online table for user */ |
if (call.LoginACC(&cfg, acc, sess->sess_user, sess->sess_pass) < 1) { |
if (call.LoginACC(&cfg, acc, sess->sess_user, sess->sess_pass) < 1) { |
ioDEBUG(0, "Login:: DENIED for username %s and password %s", |
ioDEBUG(0, "Login:: DENIED for username %s and password %s", |
Line 341 startSession(sched_task_t *task)
|
Line 337 startSession(sched_task_t *task)
|
ioDEBUG(1, "Login:: ALLOWED for username %s ...", sess->sess_user); |
ioDEBUG(1, "Login:: ALLOWED for username %s ...", sess->sess_user); |
ret = MQTT_RETCODE_ACCEPTED; |
ret = MQTT_RETCODE_ACCEPTED; |
} |
} |
printf(".sql=%p\n", pub); | |
fflush(stdout); | |
if (call.FiniSessPUB(&cfg, pub, sess->sess_cid, sess->sess_user, "%") > 0) { |
if (call.FiniSessPUB(&cfg, pub, sess->sess_cid, sess->sess_user, "%") > 0) { |
ioDEBUG(2, "Old session %s should be disconnect!", sess->sess_cid); |
ioDEBUG(2, "Old session %s should be disconnect!", sess->sess_cid); |
TAILQ_FOREACH(s, &Sessions, sess_node) |
TAILQ_FOREACH(s, &Sessions, sess_node) |
Line 352 startSession(sched_task_t *task)
|
Line 347 startSession(sched_task_t *task)
|
break; |
break; |
} |
} |
} |
} |
printf("...sql=%p\n", pub); | |
fflush(stdout); | |
if (call.InitSessPUB(&cfg, pub, sess->sess_cid, sess->sess_user, sess->sess_addr, |
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.flag, sess->sess_will.topic, sess->sess_will.msg, |
sess->sess_will.qos, sess->sess_will.retain) == -1) { |
sess->sess_will.qos, sess->sess_will.retain) == -1) { |
Line 380 startSession(sched_task_t *task)
|
Line 374 startSession(sched_task_t *task)
|
/* Start session thread OK ... */ |
/* Start session thread OK ... */ |
SESS_LOCK; |
SESS_LOCK; |
TAILQ_INSERT_TAIL(&Sessions, sess, sess_node); |
TAILQ_INSERT_TAIL(&Sessions, sess, sess_node); |
pthread_create(&sess->sess_tid, NULL, (void*(*)(void*)) thrSession, sess); | pthread_create(&sess->sess_tid, &attr, (void*(*)(void*)) thrSession, sess); |
pthread_detach(sess->sess_tid); | |
SESS_UNLOCK; |
SESS_UNLOCK; |
|
|
call.LOG(logg, "Session %s started from %s for user %s (timeout=%d) OK!\n", sess->sess_cid, |
call.LOG(logg, "Session %s started from %s for user %s (timeout=%d) OK!\n", sess->sess_cid, |