示例#1
0
static int log_level_parser(const char *s)
{
	int level = loglevel_str2num(s);

	if (level < 0) {
		sd_err("Invalid log level '%s'", s);
		sdlog_help();
		return -1;
	}

	log_level = level;
	return 0;
}
示例#2
0
int do_loglevel_set(const struct node_id *nid, const char *loglevel_str)
{
	int32_t loglevel = loglevel_str2num(loglevel_str);
	int ret;
	struct sd_req hdr;
	struct sd_rsp *rsp = (struct sd_rsp *)&hdr;

	if (loglevel == -1)
		return EXIT_USAGE;

	sd_init_req(&hdr, SD_OP_SET_LOGLEVEL);
	hdr.flags = SD_FLAG_CMD_WRITE;
	hdr.data_length = sizeof(loglevel);

	ret = dog_exec_req(nid, &hdr, &loglevel);
	if (ret < 0)
		return EXIT_SYSFAIL;

	if (rsp->result != SD_RES_SUCCESS)
		return EXIT_FAILURE;

	return EXIT_SUCCESS;
}