config.c

来自「UPnP协议中的控制设备(CD)的例子程序」· C语言 代码 · 共 73 行

C
73
字号
/*** Copyright (c) 2004 Axis Communications AB.** All rights reserved.** ** Redistribution and use in source and binary forms, with or without** modification, are permitted provided that the following conditions are met:** ** * Redistributions of source code must retain the above copyright notice,**   this list of conditions and the following disclaimer.** * Redistributions in binary form must reproduce the above copyright notice,**   this list of conditions and the following disclaimer in the documentation**   and/or other materials provided with the distribution.** * Neither name of Axis Communications AB nor the names of its contributors**   may be used to endorse or promote products derived from this software**   without specific prior written permission.** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS** ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INTEL OR** CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,** EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,** PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR** PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY** OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING** NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.*/#define _GNU_SOURCE#include <stdio.h>#include <stdlib.h>#include <string.h>#include <client.h>#include <syslog.h>#include "../main/debug.h"#include "basic_device.h"voidfreeConfig(struct GlobalConfig *config){  free(config->brand);  free(config->prodFullName);  free(config->prodShortName);  free(config->prodNbr);  free(config->webURL);  free(config->serialNumber);  free(config->friendlyName);}intreadConfig(struct GlobalConfig *config){  ParClientOptionsType options;  int errcode;  char path[200];  cli_resetOptions(&options);  strcpy(path, "Brand.Brand");  config->brand = cli_getCustomParam(path, &options, &errcode);  strcpy(path, "Brand.ProdFullName");  config->prodFullName = cli_getCustomParam(path, &options, &errcode);  strcpy(path, "Brand.ProdShortName");  config->prodShortName = cli_getCustomParam(path, &options, &errcode);  strcpy(path, "Brand.ProdNbr");  config->prodNbr = cli_getCustomParam(path, &options, &errcode);  strcpy(path, "Brand.WebURL");  config->webURL = cli_getCustomParam(path, &options, &errcode);  strcpy(path, "Properties.System.SerialNumber");  config->serialNumber = cli_getCustomParam(path, &options, &errcode);  strcpy(path, "Network.UPnP.FriendlyName");  config->friendlyName = cli_getCustomParam(path, &options, &errcode);  return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?