mirror of
https://github.com/strongswan/strongswan.git
synced 2025-12-04 00:00:21 -05:00
cleaned up XML code in tnccs-11 plugin
This commit is contained in:
parent
9c84bbcbc0
commit
2a4915e87a
@ -23,6 +23,10 @@
|
||||
|
||||
#include <libxml/parser.h>
|
||||
|
||||
#define TNCCS_NS "http://www.trustedcomputinggroup.org/IWG/TNC/1_0/IF_TNCCS#"
|
||||
#define SCHEMA_NS "http://www.w3.org/2001/XMLSchema-instance"
|
||||
#define TNCCS_XSD "https://www.trustedcomputinggroup.org/XML/SCHEMA/TNCCS_1.0.xsd"
|
||||
|
||||
typedef struct private_tnccs_batch_t private_tnccs_batch_t;
|
||||
|
||||
/**
|
||||
@ -91,7 +95,7 @@ METHOD(tnccs_batch_t, build, void,
|
||||
int buf_size;
|
||||
|
||||
xmlDocDumpFormatMemory(this->doc, &xmlbuf, &buf_size, 1);
|
||||
this->encoding = chunk_create((u_char*)xmlbuf, buf_size);
|
||||
this->encoding = chunk_create(xmlbuf, buf_size);
|
||||
this->encoding = chunk_clone(this->encoding);
|
||||
xmlFree(xmlbuf);
|
||||
}
|
||||
@ -125,8 +129,7 @@ METHOD(tnccs_batch_t, process, status_t,
|
||||
}
|
||||
|
||||
/* check TNCCS namespace */
|
||||
ns = xmlSearchNsByHref(this->doc, cur, (const xmlChar*)
|
||||
"http://www.trustedcomputinggroup.org/IWG/TNC/1_0/IF_TNCCS#");
|
||||
ns = xmlSearchNsByHref(this->doc, cur, TNCCS_NS);
|
||||
if (!ns)
|
||||
{
|
||||
error_type = TNCCS_ERROR_MALFORMED_BATCH;
|
||||
@ -135,7 +138,7 @@ METHOD(tnccs_batch_t, process, status_t,
|
||||
}
|
||||
|
||||
/* check XML document type */
|
||||
if (xmlStrcmp(cur->name, (const xmlChar*)"TNCCS-Batch"))
|
||||
if (xmlStrcmp(cur->name, "TNCCS-Batch"))
|
||||
{
|
||||
error_type = TNCCS_ERROR_MALFORMED_BATCH;
|
||||
error_msg = buf;
|
||||
@ -145,7 +148,7 @@ METHOD(tnccs_batch_t, process, status_t,
|
||||
}
|
||||
|
||||
/* check presence of BatchID property */
|
||||
batchid = xmlGetProp(cur, (const xmlChar*)"BatchId");
|
||||
batchid = xmlGetProp(cur, "BatchId");
|
||||
if (!batchid)
|
||||
{
|
||||
error_type = TNCCS_ERROR_INVALID_BATCH_ID;
|
||||
@ -166,7 +169,7 @@ METHOD(tnccs_batch_t, process, status_t,
|
||||
}
|
||||
|
||||
/* check presence of Recipient property */
|
||||
recipient = xmlGetProp(cur, (const xmlChar*)"Recipient");
|
||||
recipient = xmlGetProp(cur, "Recipient");
|
||||
if (!recipient)
|
||||
{
|
||||
error_type = TNCCS_ERROR_INVALID_RECIPIENT_TYPE;
|
||||
@ -175,12 +178,12 @@ METHOD(tnccs_batch_t, process, status_t,
|
||||
}
|
||||
|
||||
/* check recipient */
|
||||
if (!streq((char*)recipient, this->is_server ? "TNCS" : "TNCC"))
|
||||
if (!streq(recipient, this->is_server ? "TNCS" : "TNCC"))
|
||||
{
|
||||
error_type = TNCCS_ERROR_INVALID_RECIPIENT_TYPE;
|
||||
error_msg = buf;
|
||||
snprintf(buf, BUF_LEN, "message recipient expected '%s', got '%s'",
|
||||
this->is_server ? "TNCS" : "TNCC", (char*)recipient);
|
||||
this->is_server ? "TNCS" : "TNCC", recipient);
|
||||
xmlFree(recipient);
|
||||
goto fatal;
|
||||
}
|
||||
@ -201,7 +204,7 @@ METHOD(tnccs_batch_t, process, status_t,
|
||||
if (cur->ns != ns)
|
||||
{
|
||||
DBG1(DBG_TNC, "ignoring message node '%s' having wrong namespace",
|
||||
(char*)cur->name);
|
||||
cur->name);
|
||||
continue;
|
||||
}
|
||||
|
||||
@ -260,8 +263,8 @@ tnccs_batch_t* tnccs_batch_create(bool is_server, int batch_id)
|
||||
{
|
||||
private_tnccs_batch_t *this;
|
||||
xmlNodePtr n;
|
||||
xmlNsPtr ns_xsi;
|
||||
char buf[12];
|
||||
const char *recipient;
|
||||
|
||||
INIT(this,
|
||||
.public = {
|
||||
@ -277,19 +280,17 @@ tnccs_batch_t* tnccs_batch_create(bool is_server, int batch_id)
|
||||
.messages = linked_list_create(),
|
||||
.errors = linked_list_create(),
|
||||
.batch_id = batch_id,
|
||||
.doc = xmlNewDoc(BAD_CAST "1.0"),
|
||||
.doc = xmlNewDoc("1.0"),
|
||||
);
|
||||
|
||||
DBG2(DBG_TNC, "creating TNCCS Batch #%d", this->batch_id);
|
||||
n = xmlNewNode(NULL, BAD_CAST "TNCCS-Batch");
|
||||
n = xmlNewNode(NULL, "TNCCS-Batch");
|
||||
xmlNewNs(n, TNCCS_NS, NULL);
|
||||
ns_xsi = xmlNewNs(n, SCHEMA_NS, "xsi");
|
||||
snprintf(buf, sizeof(buf), "%d", batch_id);
|
||||
recipient = this->is_server ? "TNCC" : "TNCS";
|
||||
xmlNewProp(n, BAD_CAST "BatchId", BAD_CAST buf);
|
||||
xmlNewProp(n, BAD_CAST "Recipient", BAD_CAST recipient);
|
||||
xmlNewProp(n, BAD_CAST "xmlns", BAD_CAST "http://www.trustedcomputinggroup.org/IWG/TNC/1_0/IF_TNCCS#");
|
||||
xmlNewProp(n, BAD_CAST "xmlns:xsi", BAD_CAST "http://www.w3.org/2001/XMLSchema-instance");
|
||||
xmlNewProp(n, BAD_CAST "xsi:schemaLocation", BAD_CAST "http://www.trustedcomputinggroup.org/IWG/TNC/1_0/IF_TNCCS# "
|
||||
"https://www.trustedcomputinggroup.org/XML/SCHEMA/TNCCS_1.0.xsd");
|
||||
xmlNewProp(n, "BatchId", buf);
|
||||
xmlNewProp(n, "Recipient", this->is_server ? "TNCC" : "TNCS");
|
||||
xmlNewNsProp(n, ns_xsi, "schemaLocation", TNCCS_NS " " TNCCS_XSD);
|
||||
xmlDocSetRootElement(this->doc, n);
|
||||
|
||||
return &this->public;
|
||||
|
||||
@ -181,16 +181,16 @@ tnccs_msg_t *imc_imv_msg_create_from_node(xmlNodePtr node, linked_list_t *errors
|
||||
cur = node->xmlChildrenNode;
|
||||
while (cur)
|
||||
{
|
||||
if (streq((char*)cur->name, "Type") && cur->ns == ns)
|
||||
if (streq(cur->name, "Type") && cur->ns == ns)
|
||||
{
|
||||
content = xmlNodeGetContent(cur);
|
||||
this->msg_type = strtoul((char*)content, NULL, 16);
|
||||
this->msg_type = strtoul(content, NULL, 16);
|
||||
xmlFree(content);
|
||||
}
|
||||
else if (streq((char*)cur->name, "Base64") && cur->ns == ns)
|
||||
else if (streq(cur->name, "Base64") && cur->ns == ns)
|
||||
{
|
||||
content = xmlNodeGetContent(cur);
|
||||
b64_body = chunk_create((char*)content, strlen((char*)content));
|
||||
b64_body = chunk_create(content, strlen(content));
|
||||
this->msg_body = decode_base64(b64_body);
|
||||
xmlFree(content);
|
||||
}
|
||||
@ -221,21 +221,21 @@ tnccs_msg_t *imc_imv_msg_create(TNC_MessageType msg_type, chunk_t msg_body)
|
||||
.get_msg_body = _get_msg_body,
|
||||
},
|
||||
.type = IMC_IMV_MSG,
|
||||
.node = xmlNewNode(NULL, BAD_CAST "IMC-IMV-Message"),
|
||||
.node = xmlNewNode(NULL, "IMC-IMV-Message"),
|
||||
.msg_type = msg_type,
|
||||
.msg_body = chunk_clone(msg_body),
|
||||
);
|
||||
|
||||
/* add the message type number in hex */
|
||||
n = xmlNewNode(NULL, BAD_CAST "Type");
|
||||
n = xmlNewNode(NULL, "Type");
|
||||
snprintf(buf, 10, "%08x", this->msg_type);
|
||||
xmlNodeSetContent(n, BAD_CAST buf);
|
||||
xmlNodeSetContent(n, buf);
|
||||
xmlAddChild(this->node, n);
|
||||
|
||||
/* encode the message as a Base64 node */
|
||||
n = xmlNewNode(NULL, BAD_CAST "Base64");
|
||||
n = xmlNewNode(NULL, "Base64");
|
||||
b64_body = encode_base64(this->msg_body);
|
||||
xmlNodeSetContent(n, BAD_CAST b64_body.ptr);
|
||||
xmlNodeSetContent(n, b64_body.ptr);
|
||||
xmlAddChild(this->node, n);
|
||||
free(b64_body.ptr);
|
||||
|
||||
|
||||
@ -125,11 +125,11 @@ tnccs_msg_t *tnccs_error_msg_create_from_node(xmlNodePtr node)
|
||||
.error_type = TNCCS_ERROR_OTHER,
|
||||
);
|
||||
|
||||
error_type_name = xmlGetProp(node, (const xmlChar*)"type");
|
||||
error_type_name = xmlGetProp(node, "type");
|
||||
if (error_type_name)
|
||||
{
|
||||
this->error_type = enum_from_name(tnccs_error_type_names,
|
||||
(char*)error_type_name);
|
||||
error_type_name);
|
||||
if (this->error_type == -1)
|
||||
{
|
||||
this->error_type = TNCCS_ERROR_OTHER;
|
||||
@ -140,7 +140,7 @@ tnccs_msg_t *tnccs_error_msg_create_from_node(xmlNodePtr node)
|
||||
error_msg = xmlNodeGetContent(node);
|
||||
if (error_msg)
|
||||
{
|
||||
this->error_msg = strdup((char*)error_msg);
|
||||
this->error_msg = strdup(error_msg);
|
||||
xmlFree(error_msg);
|
||||
}
|
||||
|
||||
@ -167,24 +167,23 @@ tnccs_msg_t *tnccs_error_msg_create(tnccs_error_type_t type, char *msg)
|
||||
},
|
||||
.type = TNCCS_MSG_ERROR,
|
||||
.ref = 1,
|
||||
.node = xmlNewNode(NULL, BAD_CAST "TNCC-TNCS-Message"),
|
||||
.node = xmlNewNode(NULL, "TNCC-TNCS-Message"),
|
||||
.error_type = type,
|
||||
.error_msg = strdup(msg),
|
||||
);
|
||||
|
||||
DBG1(DBG_TNC, "%s", msg);
|
||||
|
||||
n = xmlNewNode(NULL, BAD_CAST "Type");
|
||||
xmlNodeSetContent(n, BAD_CAST "00000002");
|
||||
n = xmlNewNode(NULL, "Type");
|
||||
xmlNodeSetContent(n, "00000002");
|
||||
xmlAddChild(this->node, n);
|
||||
|
||||
n = xmlNewNode(NULL, BAD_CAST "XML");
|
||||
n = xmlNewNode(NULL, "XML");
|
||||
xmlAddChild(this->node, n);
|
||||
|
||||
n2 = xmlNewNode(NULL, BAD_CAST enum_to_name(tnccs_msg_type_names, this->type));
|
||||
xmlNewProp(n2, BAD_CAST "type",
|
||||
BAD_CAST enum_to_name(tnccs_error_type_names, type));
|
||||
xmlNodeSetContent(n2, BAD_CAST msg);
|
||||
n2 = xmlNewNode(NULL, enum_to_name(tnccs_msg_type_names, this->type));
|
||||
xmlNewProp(n2, "type", enum_to_name(tnccs_error_type_names, type));
|
||||
xmlNodeSetContent(n2, msg);
|
||||
xmlAddChild(n, n2);
|
||||
|
||||
return &this->public.tnccs_msg_interface;
|
||||
|
||||
@ -57,15 +57,15 @@ tnccs_msg_t* tnccs_msg_create_from_node(xmlNodePtr node, linked_list_t *errors)
|
||||
|
||||
while (cur)
|
||||
{
|
||||
if (streq((char*)cur->name, "Type") && cur->ns == ns)
|
||||
if (streq(cur->name, "Type") && cur->ns == ns)
|
||||
{
|
||||
xmlChar *content = xmlNodeGetContent(cur);
|
||||
|
||||
type = strtol((char*)content, NULL, 16);
|
||||
type = strtol(content, NULL, 16);
|
||||
xmlFree(content);
|
||||
found = TRUE;
|
||||
}
|
||||
else if (streq((char*)cur->name, "XML") && cur->ns == ns)
|
||||
else if (streq(cur->name, "XML") && cur->ns == ns)
|
||||
{
|
||||
xml_msg_node = cur->xmlChildrenNode;
|
||||
}
|
||||
|
||||
@ -93,7 +93,7 @@ tnccs_msg_t *tnccs_preferred_language_msg_create_from_node(xmlNodePtr node,
|
||||
);
|
||||
|
||||
language = xmlNodeGetContent(node);
|
||||
this->preferred_language = strdup((char*)language);
|
||||
this->preferred_language = strdup(language);
|
||||
xmlFree(language);
|
||||
|
||||
return &this->public.tnccs_msg_interface;
|
||||
@ -117,20 +117,20 @@ tnccs_msg_t *tnccs_preferred_language_msg_create(char *language)
|
||||
.get_preferred_language = _get_preferred_language,
|
||||
},
|
||||
.type = TNCCS_MSG_PREFERRED_LANGUAGE,
|
||||
.node = xmlNewNode(NULL, BAD_CAST "TNCC-TNCS-Message"),
|
||||
.node = xmlNewNode(NULL, "TNCC-TNCS-Message"),
|
||||
.preferred_language = strdup(language),
|
||||
);
|
||||
|
||||
/* add the message type number in hex */
|
||||
n = xmlNewNode(NULL, BAD_CAST "Type");
|
||||
xmlNodeSetContent(n, BAD_CAST "00000003");
|
||||
n = xmlNewNode(NULL, "Type");
|
||||
xmlNodeSetContent(n, "00000003");
|
||||
xmlAddChild(this->node, n);
|
||||
|
||||
n = xmlNewNode(NULL, BAD_CAST "XML");
|
||||
n = xmlNewNode(NULL, "XML");
|
||||
xmlAddChild(this->node, n);
|
||||
|
||||
n2 = xmlNewNode(NULL, BAD_CAST enum_to_name(tnccs_msg_type_names, this->type));
|
||||
xmlNodeSetContent(n2, BAD_CAST language);
|
||||
n2 = xmlNewNode(NULL, enum_to_name(tnccs_msg_type_names, this->type));
|
||||
xmlNodeSetContent(n2, language);
|
||||
xmlAddChild(n, n2);
|
||||
|
||||
return &this->public.tnccs_msg_interface;
|
||||
|
||||
@ -104,7 +104,7 @@ tnccs_msg_t *tnccs_reason_strings_msg_create_from_node(xmlNodePtr node,
|
||||
.node = node,
|
||||
);
|
||||
|
||||
if (xmlStrcmp(node->name, (const xmlChar*)"TNCCS-ReasonStrings"))
|
||||
if (xmlStrcmp(node->name, "TNCCS-ReasonStrings"))
|
||||
{
|
||||
error_msg = "TNCCS-ReasonStrings tag expected";
|
||||
goto fatal;
|
||||
@ -118,7 +118,7 @@ tnccs_msg_t *tnccs_reason_strings_msg_create_from_node(xmlNodePtr node,
|
||||
child = child->next;
|
||||
continue;
|
||||
}
|
||||
if (xmlStrcmp(child->name, (const xmlChar*)"ReasonString"))
|
||||
if (xmlStrcmp(child->name, "ReasonString"))
|
||||
{
|
||||
error_msg = "ReasonString tag expected";
|
||||
goto fatal;
|
||||
@ -126,15 +126,17 @@ tnccs_msg_t *tnccs_reason_strings_msg_create_from_node(xmlNodePtr node,
|
||||
break;
|
||||
}
|
||||
|
||||
lang_string = (char*)xmlGetProp(child, (const xmlChar*)"lang");
|
||||
lang_string = xmlGetProp(child, "lang");
|
||||
if (!lang_string)
|
||||
{
|
||||
lang_string = "";
|
||||
lang_string = strdup("");
|
||||
}
|
||||
this->language = chunk_create(strdup(lang_string), strlen(lang_string));
|
||||
this->language = chunk_clone(chunk_from_str(lang_string));
|
||||
xmlFree(lang_string);
|
||||
|
||||
reason_string = (char*)xmlNodeGetContent(child);
|
||||
this->reason = chunk_create(strdup(reason_string), strlen(reason_string));
|
||||
reason_string = xmlNodeGetContent(child);
|
||||
this->reason = chunk_clone(chunk_from_str(reason_string));
|
||||
xmlFree(reason_string);
|
||||
|
||||
return &this->public.tnccs_msg_interface;
|
||||
|
||||
@ -163,7 +165,7 @@ tnccs_msg_t *tnccs_reason_strings_msg_create(chunk_t reason, chunk_t language)
|
||||
.get_reason = _get_reason,
|
||||
},
|
||||
.type = TNCCS_MSG_REASON_STRINGS,
|
||||
.node = xmlNewNode(NULL, BAD_CAST "TNCC-TNCS-Message"),
|
||||
.node = xmlNewNode(NULL, "TNCC-TNCS-Message"),
|
||||
.reason = chunk_create_clone(malloc(reason.len + 1), reason),
|
||||
.language = chunk_create_clone(malloc(language.len + 1), language),
|
||||
);
|
||||
@ -173,20 +175,20 @@ tnccs_msg_t *tnccs_reason_strings_msg_create(chunk_t reason, chunk_t language)
|
||||
this->language.ptr[this->language.len] = '\0';
|
||||
|
||||
/* add the message type number in hex */
|
||||
n = xmlNewNode(NULL, BAD_CAST "Type");
|
||||
xmlNodeSetContent(n, BAD_CAST "00000004");
|
||||
n = xmlNewNode(NULL, "Type");
|
||||
xmlNodeSetContent(n, "00000004");
|
||||
xmlAddChild(this->node, n);
|
||||
|
||||
n = xmlNewNode(NULL, BAD_CAST "XML");
|
||||
n = xmlNewNode(NULL, "XML");
|
||||
xmlAddChild(this->node, n);
|
||||
|
||||
n2 = xmlNewNode(NULL, BAD_CAST enum_to_name(tnccs_msg_type_names, this->type));
|
||||
n2 = xmlNewNode(NULL, enum_to_name(tnccs_msg_type_names, this->type));
|
||||
|
||||
/* could add multiple reasons here, if we had them */
|
||||
|
||||
n3 = xmlNewNode(NULL, BAD_CAST "ReasonString");
|
||||
xmlNewProp(n3, BAD_CAST "xml:lang", BAD_CAST this->language.ptr);
|
||||
xmlNodeSetContent(n3, BAD_CAST this->reason.ptr);
|
||||
n3 = xmlNewNode(NULL, "ReasonString");
|
||||
xmlNewProp(n3, "xml:lang", this->language.ptr);
|
||||
xmlNodeSetContent(n3, this->reason.ptr);
|
||||
xmlAddChild(n2, n3);
|
||||
xmlAddChild(n, n2);
|
||||
|
||||
|
||||
@ -95,21 +95,21 @@ tnccs_msg_t *tnccs_recommendation_msg_create_from_node(xmlNodePtr node,
|
||||
.node = node,
|
||||
);
|
||||
|
||||
rec_string = xmlGetProp(node, (const xmlChar*)"type");
|
||||
rec_string = xmlGetProp(node, "type");
|
||||
if (!rec_string)
|
||||
{
|
||||
error_msg = "type property in TNCCS-Recommendation is missing";
|
||||
goto fatal;
|
||||
}
|
||||
else if (streq((char*)rec_string, "allow"))
|
||||
else if (streq(rec_string, "allow"))
|
||||
{
|
||||
this->rec = TNC_IMV_ACTION_RECOMMENDATION_ALLOW;
|
||||
}
|
||||
else if (streq((char*)rec_string, "isolate"))
|
||||
else if (streq(rec_string, "isolate"))
|
||||
{
|
||||
this->rec = TNC_IMV_ACTION_RECOMMENDATION_ISOLATE;
|
||||
}
|
||||
else if (streq((char*)rec_string, "none"))
|
||||
else if (streq(rec_string, "none"))
|
||||
{
|
||||
this->rec = TNC_IMV_ACTION_RECOMMENDATION_NO_ACCESS;
|
||||
}
|
||||
@ -151,16 +151,16 @@ tnccs_msg_t *tnccs_recommendation_msg_create(TNC_IMV_Action_Recommendation rec)
|
||||
.get_recommendation = _get_recommendation,
|
||||
},
|
||||
.type = TNCCS_MSG_RECOMMENDATION,
|
||||
.node = xmlNewNode(NULL, BAD_CAST "TNCC-TNCS-Message"),
|
||||
.node = xmlNewNode(NULL, "TNCC-TNCS-Message"),
|
||||
.rec = rec,
|
||||
);
|
||||
|
||||
/* add the message type number in hex */
|
||||
n = xmlNewNode(NULL, BAD_CAST "Type");
|
||||
xmlNodeSetContent(n, BAD_CAST "00000001");
|
||||
n = xmlNewNode(NULL, "Type");
|
||||
xmlNodeSetContent(n, "00000001");
|
||||
xmlAddChild(this->node, n);
|
||||
|
||||
n = xmlNewNode(NULL, BAD_CAST "XML");
|
||||
n = xmlNewNode(NULL, "XML");
|
||||
xmlAddChild(this->node, n);
|
||||
|
||||
switch (rec)
|
||||
@ -177,8 +177,8 @@ tnccs_msg_t *tnccs_recommendation_msg_create(TNC_IMV_Action_Recommendation rec)
|
||||
rec_string = "none";
|
||||
}
|
||||
|
||||
n2 = xmlNewNode(NULL, BAD_CAST enum_to_name(tnccs_msg_type_names, this->type));
|
||||
xmlNewProp(n2, BAD_CAST "type", BAD_CAST rec_string);
|
||||
n2 = xmlNewNode(NULL, enum_to_name(tnccs_msg_type_names, this->type));
|
||||
xmlNewProp(n2, BAD_CAST "type", rec_string);
|
||||
xmlNodeSetContent(n2, "");
|
||||
xmlAddChild(n, n2);
|
||||
|
||||
|
||||
@ -97,20 +97,20 @@ tnccs_msg_t *tnccs_tncs_contact_info_msg_create(void)
|
||||
},
|
||||
},
|
||||
.type = TNCCS_MSG_TNCS_CONTACT_INFO,
|
||||
.node = xmlNewNode(NULL, BAD_CAST "TNCC-TNCS-Message"),
|
||||
.node = xmlNewNode(NULL, "TNCC-TNCS-Message"),
|
||||
);
|
||||
|
||||
/* add the message type number in hex */
|
||||
n = xmlNewNode(NULL, BAD_CAST "Type");
|
||||
xmlNodeSetContent(n, BAD_CAST "00000005");
|
||||
n = xmlNewNode(NULL, "Type");
|
||||
xmlNodeSetContent(n, "00000005");
|
||||
xmlAddChild(this->node, n);
|
||||
|
||||
n = xmlNewNode(NULL, BAD_CAST "XML");
|
||||
n = xmlNewNode(NULL, "XML");
|
||||
xmlAddChild(this->node, n);
|
||||
|
||||
/* TODO
|
||||
n2 = xmlNewNode(NULL, BAD_CAST enum_to_name(tnccs_msg_type_names, this->type));
|
||||
xmlNodeSetContent(n2, BAD_CAST language);
|
||||
n2 = xmlNewNode(NULL, enum_to_name(tnccs_msg_type_names, this->type));
|
||||
xmlNodeSetContent(n2, language);
|
||||
xmlAddChild(n, n2);
|
||||
*/
|
||||
|
||||
|
||||
@ -60,11 +60,12 @@ done
|
||||
|
||||
|
||||
##########################################################################
|
||||
# clear radius.log on FreeRadius servers
|
||||
# clear daemon.log and radius.log on FreeRadius servers
|
||||
#
|
||||
|
||||
for host in $RADIUSHOSTS
|
||||
do
|
||||
eval HOSTLOGIN="root@`echo $HOSTNAMEIPV4 | sed -n -e "s/^.*${host},//gp" | awk -F, '{ print $1 }' | awk '{ print $1 }'`"
|
||||
ssh $SSHCONF $HOSTLOGIN 'rm -f /var/log/freeradius/radius.log' > /dev/null 2>&1
|
||||
ssh $SSHCONF $HOSTLOGIN 'rm -f /var/log/daemon.log /var/log/freeradius/radius.log; \
|
||||
kill -SIGHUP `cat /var/run/rsyslogd.pid`' > /dev/null 2>&1
|
||||
done
|
||||
|
||||
@ -6,9 +6,9 @@ carol::cat /etc/tnc_config
|
||||
dave::cat /etc/tnc_config
|
||||
carol::cat /etc/tnc/dummyimc.file
|
||||
dave::cat /etc/tnc/dummyimc.file
|
||||
moon::LEAK_DETECTIVE_DISABLE=1 LOG4CXX_CONFIGURATION=/etc/tnc/log4cxx.properties ipsec start
|
||||
carol::LEAK_DETECTIVE_DISABLE=1 LOG4CXX_CONFIGURATION=/etc/tnc/log4cxx.properties ipsec start
|
||||
dave::LEAK_DETECTIVE_DISABLE=1 LOG4CXX_CONFIGURATION=/etc/tnc/log4cxx.properties ipsec start
|
||||
moon::LOG4CXX_CONFIGURATION=/etc/tnc/log4cxx.properties ipsec start
|
||||
carol::LOG4CXX_CONFIGURATION=/etc/tnc/log4cxx.properties ipsec start
|
||||
dave::LOG4CXX_CONFIGURATION=/etc/tnc/log4cxx.properties ipsec start
|
||||
carol::sleep 1
|
||||
carol::ipsec up home
|
||||
dave::ipsec up home
|
||||
|
||||
@ -6,8 +6,8 @@ alice::ln -s /etc/freeradius/sites-available/inner-tunnel-second /etc/freeradius
|
||||
alice::cat /etc/freeradius/sites-enabled/inner-tunnel-second
|
||||
alice::LEAK_DETECTIVE_DISABLE=1 LOG4CXX_CONFIGURATION=/etc/tnc/log4cxx.properties radiusd
|
||||
moon::ipsec start
|
||||
carol::LEAK_DETECTIVE_DISABLE=1 ipsec start
|
||||
dave::LEAK_DETECTIVE_DISABLE=1 ipsec start
|
||||
carol::ipsec start
|
||||
dave::ipsec start
|
||||
carol::sleep 1
|
||||
carol::ipsec up home
|
||||
dave::ipsec up home
|
||||
|
||||
@ -8,8 +8,8 @@ alice::cat /etc/tnc_config
|
||||
carol::cat /etc/tnc_config
|
||||
dave::cat /etc/tnc_config
|
||||
moon::ipsec start
|
||||
carol::LEAK_DETECTIVE_DISABLE=1 ipsec start
|
||||
dave::LEAK_DETECTIVE_DISABLE=1 ipsec start
|
||||
carol::ipsec start
|
||||
dave::ipsec start
|
||||
carol::sleep 1
|
||||
carol::ipsec up home
|
||||
dave::ipsec up home
|
||||
|
||||
@ -4,9 +4,9 @@ dave::iptables-restore < /etc/iptables.rules
|
||||
moon::cat /etc/tnc_config
|
||||
carol::cat /etc/tnc_config
|
||||
dave::cat /etc/tnc_config
|
||||
moon::LEAK_DETECTIVE_DISABLE=1 ipsec start
|
||||
carol::LEAK_DETECTIVE_DISABLE=1 ipsec start
|
||||
dave::LEAK_DETECTIVE_DISABLE=1 ipsec start
|
||||
moon::ipsec start
|
||||
carol::ipsec start
|
||||
dave::ipsec start
|
||||
carol::sleep 1
|
||||
carol::ipsec up home
|
||||
dave::ipsec up home
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user