📄 scpd_basic.c
字号:
/*** 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 <errno.h>#include <syslog.h>#include <upnp/upnp.h>#include "../main/debug.h"#include "basic_device.h"static char *scpdBasicDesc = "\<?xml version=\"1.0\"?>\r\n\<scpd xmlns=\"urn:schemas-upnp-org:service-1-0\">\r\n\ <specVersion>\r\n\ <major>1</major>\r\n\ <minor>0</minor>\r\n\ </specVersion>\r\n\ <serviceStateTable>\r\n\ <stateVariable sendEvents=\"no\">\r\n\ <name>Status</name>\r\n\ <dataType>string</dataType>\r\n\ <defaultValue>OK</defaultValue>\r\n\ <allowedValueList>\r\n\ <allowedValue>OK</allowedValue>\r\n\ </allowedValueList>\r\n\ </stateVariable>\r\n\ </serviceStateTable>\r\n\</scpd>\r\n";voidcreateSCPDBasicDescDoc(struct GlobalConfig *config){ char *tmp; FILE *doc; /* Create SCPD document for basic service. */ asprintf(&tmp, "%s/%s", WEB_SERVER_ROOT, SCPD_BASIC_DOC); doc = fopen(tmp, "w+"); if (doc == NULL) { syslog(LOG_CRIT, "fopen(%s): %s", tmp, strerror(errno)); exit(EXIT_FAILURE); } fprintf(doc, scpdBasicDesc); fclose(doc); free(tmp);}voidremoveSCPDBasicDescDoc(){ char *tmp; asprintf(&tmp, "%s/%s", WEB_SERVER_ROOT, SCPD_BASIC_DOC); unlink(tmp); free(tmp);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -