diff --git a/doc/ChangeLog b/doc/ChangeLog index 16a6a1c2b..f2f595e2d 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,8 @@ +2008-07-05 Vadim Kurland + + * fwbuilder.dtd.in: Added attributes for TOS and DSCP codes to + IPService xml element + 2008-07-02 Vadim Kurland * InterfaceData.h (libfwbuilder): InterfaceData moved from diff --git a/etc/fwbuilder.dtd b/etc/fwbuilder.dtd index 900aa6c86..15208bb8d 100644 --- a/etc/fwbuilder.dtd +++ b/etc/fwbuilder.dtd @@ -437,6 +437,8 @@ Interface can have the following attributes: short_fragm %BOOLEAN; #IMPLIED ssrr %BOOLEAN; #IMPLIED ts %BOOLEAN; #IMPLIED + tos %STRING; #IMPLIED + dscp %STRING; #IMPLIED > diff --git a/etc/fwbuilder.dtd.in b/etc/fwbuilder.dtd.in index 03524aa0b..6a0cfe47e 100644 --- a/etc/fwbuilder.dtd.in +++ b/etc/fwbuilder.dtd.in @@ -437,6 +437,8 @@ Interface can have the following attributes: short_fragm %BOOLEAN; #IMPLIED ssrr %BOOLEAN; #IMPLIED ts %BOOLEAN; #IMPLIED + tos %STRING; #IMPLIED + dscp %STRING; #IMPLIED > diff --git a/src/fwbuilder/IPService.cpp b/src/fwbuilder/IPService.cpp index 89ca3e2d8..80b4bbc42 100644 --- a/src/fwbuilder/IPService.cpp +++ b/src/fwbuilder/IPService.cpp @@ -113,6 +113,40 @@ void IPService::fromXML(xmlNodePtr root) throw(FWException) setStr("ts", n); FREEXMLBUFF(n); } + + n=FROMXMLCAST(xmlGetProp(root,TOXMLCAST("tos"))); + if(n!=NULL) + { + setStr("tos", n); + FREEXMLBUFF(n); + } + + n=FROMXMLCAST(xmlGetProp(root,TOXMLCAST("dscp"))); + if(n!=NULL) + { + setStr("dscp", n); + FREEXMLBUFF(n); + } +} + +string IPService::getTOSCode() +{ + return getStr("tos"); +} + +void IPService::setTOSCode(const string &c) +{ + setStr("tos", c); +} + +string IPService::getDSCPCode() +{ + return getStr("dscp"); +} + +void IPService::setDSCPCode(const string &c) +{ + setStr("dscp", c); } diff --git a/src/fwbuilder/IPService.h b/src/fwbuilder/IPService.h index 9febb7656..e5f51e595 100644 --- a/src/fwbuilder/IPService.h +++ b/src/fwbuilder/IPService.h @@ -50,6 +50,12 @@ class IPService : public Service virtual std::string getProtocolName(); virtual int getProtocolNumber(); + + std::string getTOSCode(); + void setTOSCode(const std::string &c); + + std::string getDSCPCode(); + void setDSCPCode(const std::string &c); }; }