mosquitto遇到严重错误时会退出循环

发布时间 2023-07-11 17:59:54作者: zhaogaojian
while(run){
	do{
		rc = mosquitto_loop(mosq, timeout, max_packets);
	}while(run && rc == MOSQ_ERR_SUCCESS);
	/* Quit after fatal errors. */
	switch(rc){
		case MOSQ_ERR_NOMEM:
		case MOSQ_ERR_PROTOCOL:
		case MOSQ_ERR_INVAL:
		case MOSQ_ERR_NOT_FOUND:
		case MOSQ_ERR_TLS:
		case MOSQ_ERR_PAYLOAD_SIZE:
		case MOSQ_ERR_NOT_SUPPORTED:
		case MOSQ_ERR_AUTH:
		case MOSQ_ERR_ACL_DENIED:
		case MOSQ_ERR_UNKNOWN:
		case MOSQ_ERR_EAI:
		case MOSQ_ERR_PROXY:
			return rc;
		case MOSQ_ERR_ERRNO:
			break;
	}