You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

snf-configuration.xsl 63KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637
  1. <?xml version="1.0"?>
  2. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  3. <xsl:template match="/snf">
  4. <html>
  5. <head>
  6. <link href="snf-configuration.css" rel="stylesheet" type="text/css"/>
  7. <title> Message Sniffer Configuration </title>
  8. </head>
  9. <body>
  10. <div class="banner">
  11. Message Sniffer Configuration
  12. </div>
  13. <xsl:apply-templates/>
  14. </body>
  15. </html>
  16. </xsl:template>
  17. <xsl:template match="node">
  18. <div class="section node">
  19. <div class="section-label">
  20. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/index.jsp">
  21. Node
  22. </a>
  23. </div>
  24. <div class="section-item">
  25. <table>
  26. <xsl:if test="@identity">
  27. <xsl:call-template name="line-item">
  28. <xsl:with-param name="label" select="'Identity File:'"/>
  29. <xsl:with-param name="value" select="@identity"/>
  30. </xsl:call-template>
  31. </xsl:if>
  32. <xsl:if test="@licenseid">
  33. <xsl:call-template name="line-item">
  34. <xsl:with-param name="label" select="'License ID:'"/>
  35. <xsl:with-param name="value" select="@licenseid"/>
  36. </xsl:call-template>
  37. </xsl:if>
  38. <xsl:if test="@authentication">
  39. <xsl:call-template name="line-item">
  40. <xsl:with-param name="label" select="'Authentication:'"/>
  41. <xsl:with-param name="value" select="@authentication"/>
  42. </xsl:call-template>
  43. </xsl:if>
  44. </table>
  45. </div>
  46. </div>
  47. <xsl:apply-templates/>
  48. </xsl:template>
  49. <xsl:template match="paths">
  50. <div class="section paths">
  51. <div class="section-label">
  52. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/paths/index.jsp">
  53. Paths
  54. </a>
  55. </div>
  56. <table class="sub-section">
  57. <xsl:call-template name="line-item">
  58. <xsl:with-param name="label" select="'Log Directory:'"/>
  59. <xsl:with-param name="value" select="log/@path"/>
  60. </xsl:call-template>
  61. <xsl:call-template name="line-item">
  62. <xsl:with-param name="label" select="'Rulebase Directory:'"/>
  63. <xsl:with-param name="value" select="rulebase/@path"/>
  64. </xsl:call-template>
  65. <xsl:call-template name="line-item">
  66. <xsl:with-param name="label" select="'Workspace Directory:'"/>
  67. <xsl:with-param name="value" select="workspace/@path"/>
  68. </xsl:call-template>
  69. </table>
  70. </div>
  71. </xsl:template>
  72. <xsl:template match="logs">
  73. <div class="section logs">
  74. <div class="section-label">
  75. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/logs">
  76. Logs
  77. </a>
  78. </div>
  79. <div class="section-item">
  80. <div class="section-label">
  81. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/logs/rotation.jsp">
  82. Rotation Timing
  83. </a>
  84. </div>
  85. <div class="section-item">
  86. <table>
  87. <xsl:call-template name="line-item">
  88. <xsl:with-param name="label" select="'Use Local Time To Rotate Logs:'"/>
  89. <xsl:with-param name="value" select="rotation/@localtime"/>
  90. </xsl:call-template>
  91. </table>
  92. </div>
  93. </div>
  94. <div class="section-item">
  95. <div class="section-label">
  96. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/logs/status">
  97. Status Data
  98. </a>
  99. </div>
  100. <div class="sub-section">
  101. <table style="border-collapse: collapse;" class="chart">
  102. <tr class="chart-header">
  103. <td class="chart-header">
  104. Data Class
  105. </td>
  106. <td class="chart-header">
  107. Generate
  108. </td>
  109. <td class="chart-header">
  110. Append
  111. </td>
  112. </tr>
  113. <tr>
  114. <td class="chart-label">
  115. Per Second
  116. </td>
  117. <xsl:call-template name="chart-on-off-cell">
  118. <xsl:with-param name="value" select="status/second/@log"/>
  119. </xsl:call-template>
  120. <xsl:call-template name="chart-on-off-cell">
  121. <xsl:with-param name="value" select="status/second/@append"/>
  122. </xsl:call-template>
  123. </tr>
  124. <tr>
  125. <td class="chart-label">
  126. Per Minute
  127. </td>
  128. <xsl:call-template name="chart-on-off-cell">
  129. <xsl:with-param name="value" select="status/minute/@log"/>
  130. </xsl:call-template>
  131. <xsl:call-template name="chart-on-off-cell">
  132. <xsl:with-param name="value" select="status/minute/@append"/>
  133. </xsl:call-template>
  134. </tr>
  135. <tr>
  136. <td class="chart-label">
  137. Per Hour
  138. </td>
  139. <xsl:call-template name="chart-on-off-cell">
  140. <xsl:with-param name="value" select="status/hour/@log"/>
  141. </xsl:call-template>
  142. <xsl:call-template name="chart-on-off-cell">
  143. <xsl:with-param name="value" select="status/hour/@append"/>
  144. </xsl:call-template>
  145. </tr>
  146. </table>
  147. </div>
  148. </div>
  149. <div class="section-item">
  150. <div class="section-label">
  151. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/logs/scan">
  152. Scan Data
  153. </a>
  154. </div>
  155. <div class="sub-section">
  156. <div class="section-label">
  157. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/logs/scan/identifier.jsp">
  158. Message Identification
  159. </a>
  160. </div>
  161. <div class="section-item">
  162. <table>
  163. <xsl:call-template name="line-item">
  164. <xsl:with-param name="label" select="'Extract Message-ID For Log Entries:'"/>
  165. <xsl:with-param name="value" select="scan/identifier/@force-message-id"/>
  166. </xsl:call-template>
  167. </table>
  168. </div>
  169. <div class="section-label">
  170. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/logs/scan/classic.jsp">
  171. Classic Log File
  172. </a>
  173. </div>
  174. <div class="section-item">
  175. <table>
  176. <xsl:call-template name="line-item">
  177. <xsl:with-param name="label" select="'Output Mode:'"/>
  178. <xsl:with-param name="value" select="scan/classic/@mode"/>
  179. </xsl:call-template>
  180. <xsl:call-template name="line-item">
  181. <xsl:with-param name="label" select="'Rotate By Date:'"/>
  182. <xsl:with-param name="value" select="scan/classic/@rotate"/>
  183. </xsl:call-template>
  184. <xsl:call-template name="line-item">
  185. <xsl:with-param name="label" select="'Log Pattern Matches:'"/>
  186. <xsl:with-param name="value" select="scan/classic/@matches"/>
  187. </xsl:call-template>
  188. </table>
  189. </div>
  190. <div class="section-label">
  191. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/logs/scan/xml.jsp">
  192. XML Log File
  193. </a>
  194. </div>
  195. <div class="section-item">
  196. <table>
  197. <xsl:call-template name="line-item">
  198. <xsl:with-param name="label" select="'Output Mode:'"/>
  199. <xsl:with-param name="value" select="scan/xml/@mode"/>
  200. </xsl:call-template>
  201. <xsl:call-template name="line-item">
  202. <xsl:with-param name="label" select="'Rotate By Date:'"/>
  203. <xsl:with-param name="value" select="scan/xml/@rotate"/>
  204. </xsl:call-template>
  205. <xsl:call-template name="line-item">
  206. <xsl:with-param name="label" select="'Log Pattern Matches:'"/>
  207. <xsl:with-param name="value" select="scan/xml/@matches"/>
  208. </xsl:call-template>
  209. <xsl:call-template name="line-item">
  210. <xsl:with-param name="label" select="'Log Performance Data:'"/>
  211. <xsl:with-param name="value" select="scan/xml/@performance"/>
  212. </xsl:call-template>
  213. <xsl:call-template name="line-item">
  214. <xsl:with-param name="label" select="'Log GBUdb Data:'"/>
  215. <xsl:with-param name="value" select="scan/xml/@gbudb"/>
  216. </xsl:call-template>
  217. </table>
  218. </div>
  219. <div class="section-label">
  220. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/logs/scan/xheaders">
  221. X-Header Generation
  222. </a>
  223. </div>
  224. <div class="section-item">
  225. <table>
  226. <xsl:call-template name="line-item">
  227. <xsl:with-param name="label" select="'Output Mode:'"/>
  228. <xsl:with-param name="value" select="scan/xheaders/output/@mode"/>
  229. </xsl:call-template>
  230. </table>
  231. </div>
  232. <div class="sub-section">
  233. <table style="border-collapse: collapse;" class="chart xhdr-chart">
  234. <tr class="chart-header">
  235. <td colspan="3" class="item-label">
  236. Scanner Data
  237. </td>
  238. </tr>
  239. <xsl:call-template name="xhdr-chart-header"/>
  240. <xsl:call-template name="xhdr-chart-line">
  241. <xsl:with-param name="path" select="scan/xheaders/version"/>
  242. <xsl:with-param name="description" select="'Software Version'"/>
  243. </xsl:call-template>
  244. <xsl:call-template name="xhdr-chart-line">
  245. <xsl:with-param name="path" select="scan/xheaders/license"/>
  246. <xsl:with-param name="description" select="'SNF License ID'"/>
  247. </xsl:call-template>
  248. <xsl:call-template name="xhdr-chart-line">
  249. <xsl:with-param name="path" select="scan/xheaders/rulebase"/>
  250. <xsl:with-param name="description" select="'Rulebase Timestamp'"/>
  251. </xsl:call-template>
  252. </table>
  253. </div>
  254. <div class="sub-section">
  255. <table style="border-collapse: collapse;" class="chart xhdr-chart">
  256. <tr class="chart-header">
  257. <td colspan="3" class="item-label">
  258. Scan Details
  259. </td>
  260. </tr>
  261. <xsl:call-template name="xhdr-chart-header"/>
  262. <xsl:call-template name="xhdr-chart-line">
  263. <xsl:with-param name="path" select="scan/xheaders/identifier"/>
  264. <xsl:with-param name="description" select="'Message Identifier'"/>
  265. </xsl:call-template>
  266. <xsl:call-template name="xhdr-chart-line">
  267. <xsl:with-param name="path" select="scan/xheaders/gbudb"/>
  268. <xsl:with-param name="description" select="'GBUdb Analysis'"/>
  269. </xsl:call-template>
  270. <xsl:call-template name="xhdr-chart-line">
  271. <xsl:with-param name="path" select="scan/xheaders/result"/>
  272. <xsl:with-param name="description" select="'Result Code'"/>
  273. </xsl:call-template>
  274. <xsl:call-template name="xhdr-chart-line">
  275. <xsl:with-param name="path" select="scan/xheaders/matches"/>
  276. <xsl:with-param name="description" select="'Rule Matches'"/>
  277. </xsl:call-template>
  278. </table>
  279. </div>
  280. <div class="sub-section">
  281. <table style="border-collapse: collapse;" class="chart xhdr-chart">
  282. <tr class="chart-header">
  283. <td colspan="3" class="item-label">
  284. Basic Result Signals
  285. </td>
  286. </tr>
  287. <xsl:call-template name="xhdr-chart-header"/>
  288. <xsl:call-template name="xhdr-chart-line">
  289. <xsl:with-param name="path" select="scan/xheaders/black"/>
  290. <xsl:with-param name="description" select="'Black (spam/malware)'"/>
  291. </xsl:call-template>
  292. <xsl:call-template name="xhdr-chart-line">
  293. <xsl:with-param name="path" select="scan/xheaders/white"/>
  294. <xsl:with-param name="description" select="'White (White Rule)'"/>
  295. </xsl:call-template>
  296. <xsl:call-template name="xhdr-chart-line">
  297. <xsl:with-param name="path" select="scan/xheaders/clean"/>
  298. <xsl:with-param name="description" select="'Clean (No Match)'"/>
  299. </xsl:call-template>
  300. </table>
  301. </div>
  302. <div class="sub-section">
  303. <table style="border-collapse: collapse;" class="chart xhdr-chart">
  304. <tr class="chart-header">
  305. <td colspan="3" class="item-label">
  306. Result Code Signals
  307. </td>
  308. </tr>
  309. <xsl:call-template name="xhdr-chart-header"/>
  310. <xsl:apply-templates select="scan/xheaders/symbol"/>
  311. </table>
  312. </div>
  313. </div>
  314. </div>
  315. </div>
  316. </xsl:template>
  317. <xsl:template match="symbol">
  318. <xsl:variable name="code" select="@n"/>
  319. <xsl:call-template name="xhdr-chart-line">
  320. <xsl:with-param name="path" select="."/>
  321. <xsl:with-param name="description" select="concat('Result Code [',$code,']')"/>
  322. </xsl:call-template>
  323. </xsl:template>
  324. <xsl:template name="xhdr-chart-header">
  325. <tr class="chart-header">
  326. <td class="chart-header xhdr-col1">
  327. Information Provided
  328. </td>
  329. <td class="chart-header xhdr-col2">
  330. On/Off
  331. </td>
  332. <td class="chart-header xhdr-col3">
  333. X-Header Field Name
  334. </td>
  335. </tr>
  336. </xsl:template>
  337. <xsl:template name="xhdr-chart-line">
  338. <xsl:param name="path"/>
  339. <xsl:param name="description"/>
  340. <tr>
  341. <td class="chart-label">
  342. <xsl:value-of select="$description"/>
  343. </td>
  344. <xsl:call-template name="chart-on-off-cell">
  345. <xsl:with-param name="value" select="$path/@on-off"/>
  346. </xsl:call-template>
  347. <td class="chart-value">
  348. <xsl:value-of select="$path"/>
  349. </td>
  350. </tr>
  351. </xsl:template>
  352. <xsl:template name="on-off-switch">
  353. <xsl:param name="value"/>
  354. <xsl:variable name="vlower" select="translate($value,'YESONTRU','yesontru')"/>
  355. <xsl:choose>
  356. <xsl:when test="$vlower = 'on'">on</xsl:when>
  357. <xsl:when test="$vlower = 'yes'">on</xsl:when>
  358. <xsl:when test="$vlower = 'true'">on</xsl:when>
  359. <xsl:otherwise>off</xsl:otherwise>
  360. </xsl:choose>
  361. </xsl:template>
  362. <xsl:template name="chart-on-off-cell">
  363. <xsl:param name="value"/>
  364. <xsl:variable name="switch">
  365. <xsl:call-template name="on-off-switch">
  366. <xsl:with-param name="value" select="$value"/>
  367. </xsl:call-template>
  368. </xsl:variable>
  369. <xsl:choose>
  370. <xsl:when test="$switch = 'on'">
  371. <td class="chart-value oncolor">
  372. <xsl:value-of select="$value"/>
  373. </td>
  374. </xsl:when>
  375. <xsl:otherwise>
  376. <td class="chart-value offcolor">
  377. <xsl:value-of select="$value"/>
  378. </td>
  379. </xsl:otherwise>
  380. </xsl:choose>
  381. </xsl:template>
  382. <xsl:template name="line-item">
  383. <xsl:param name="label"/>
  384. <xsl:param name="value"/>
  385. <tr>
  386. <td class="item-label">
  387. <xsl:value-of select="$label"/>
  388. </td>
  389. <td class="item-value">
  390. <xsl:value-of select="$value"/>
  391. </td>
  392. </tr>
  393. </xsl:template>
  394. <xsl:template match="network">
  395. <div class="section network">
  396. <div class="section-label">
  397. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/network">
  398. Network
  399. </a>
  400. </div>
  401. <div class="section-item">
  402. <div class="section-label">
  403. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/network/sync.jsp">
  404. SNF Node Synchronization
  405. </a>
  406. </div>
  407. <div class="section-item">
  408. <table>
  409. <xsl:call-template name="line-item">
  410. <xsl:with-param name="label" select="'Retry Secs:'"/>
  411. <xsl:with-param name="value" select="sync/@secs"/>
  412. </xsl:call-template>
  413. <xsl:call-template name="line-item">
  414. <xsl:with-param name="label" select="'SYNC Host:'"/>
  415. <xsl:with-param name="value" select="sync/@host"/>
  416. </xsl:call-template>
  417. <xsl:call-template name="line-item">
  418. <xsl:with-param name="label" select="'SYNC Port:'"/>
  419. <xsl:with-param name="value" select="sync/@port"/>
  420. </xsl:call-template>
  421. </table>
  422. </div>
  423. </div>
  424. <div class="section-item">
  425. <div class="section-label">
  426. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/network/update-script.jsp">
  427. Automated Rulebase Updates
  428. </a>
  429. </div>
  430. <div class="section-item">
  431. <table>
  432. <xsl:call-template name="line-item">
  433. <xsl:with-param name="label" select="'Automated Update-Script:'"/>
  434. <xsl:with-param name="value" select="update-script/@on-off"/>
  435. </xsl:call-template>
  436. <xsl:call-template name="line-item">
  437. <xsl:with-param name="label" select="'Update-Script Path:'"/>
  438. <xsl:with-param name="value" select="update-script/@call"/>
  439. </xsl:call-template>
  440. <xsl:call-template name="line-item">
  441. <xsl:with-param name="label" select="'Guard Time Secs:'"/>
  442. <xsl:with-param name="value" select="update-script/@guard-time"/>
  443. </xsl:call-template>
  444. </table>
  445. </div>
  446. </div>
  447. </div>
  448. </xsl:template>
  449. <xsl:template match="xci">
  450. <div class="section xci">
  451. <div class="section-label">
  452. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/xci.jsp">
  453. XCI
  454. </a>
  455. </div>
  456. <div class="section-item">
  457. <table>
  458. <xsl:call-template name="line-item">
  459. <xsl:with-param name="label" select="'XCI Interface:'"/>
  460. <xsl:with-param name="value" select="@on-off"/>
  461. </xsl:call-template>
  462. <xsl:call-template name="line-item">
  463. <xsl:with-param name="label" select="'XCI Listener Port:'"/>
  464. <xsl:with-param name="value" select="@port"/>
  465. </xsl:call-template>
  466. </table>
  467. </div>
  468. </div>
  469. </xsl:template>
  470. <xsl:template match="gbudb">
  471. <div class="section gbudb">
  472. <div class="section-label">
  473. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb">
  474. GBUdb
  475. </a>
  476. </div>
  477. <xsl:apply-templates/>
  478. </div>
  479. </xsl:template>
  480. <xsl:template match="gbudb/database">
  481. <div class="sub-section">
  482. <div class="section-label">
  483. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb">
  484. Database Maintenance
  485. </a>
  486. </div>
  487. <div class="section-item">
  488. <table>
  489. <xsl:apply-templates/>
  490. </table>
  491. </div>
  492. </div>
  493. </xsl:template>
  494. <xsl:template match="database/condense">
  495. <tr>
  496. <td class="item-label">
  497. Condensation Guard Time (secs):
  498. </td>
  499. <td class="item-value">
  500. <xsl:value-of select="@minimum-seconds-between"/>
  501. </td>
  502. </tr>
  503. <xsl:apply-templates/>
  504. </xsl:template>
  505. <xsl:template match="condense/time-trigger">
  506. <xsl:variable name="on-off">
  507. <xsl:call-template name="on-off-switch">
  508. <xsl:with-param name="value" select="@on-off"/>
  509. </xsl:call-template>
  510. </xsl:variable>
  511. <xsl:choose>
  512. <xsl:when test="$on-off = 'on'">
  513. <xsl:call-template name="condense-time-trigger-on"/>
  514. </xsl:when>
  515. <xsl:otherwise>
  516. <xsl:call-template name="condense-time-trigger-off"/>
  517. </xsl:otherwise>
  518. </xsl:choose>
  519. </xsl:template>
  520. <xsl:template name="condense-time-trigger-on">
  521. <tr>
  522. <td class="item-label">
  523. Trigger Condensation After (secs):
  524. </td>
  525. <td class="item-value">
  526. <xsl:value-of select="@seconds"/>
  527. </td>
  528. </tr>
  529. </xsl:template>
  530. <xsl:template name="condense-time-trigger-off">
  531. <tr>
  532. <td class="item-label">
  533. Condensation Time Trigger Disabled
  534. </td>
  535. <td class="item-value"/>
  536. </tr>
  537. </xsl:template>
  538. <xsl:template match="condense/posts-trigger">
  539. <xsl:variable name="on-off">
  540. <xsl:call-template name="on-off-switch">
  541. <xsl:with-param name="value" select="@on-off"/>
  542. </xsl:call-template>
  543. </xsl:variable>
  544. <xsl:choose>
  545. <xsl:when test="$on-off = 'on'">
  546. <xsl:call-template name="condense-posts-trigger-on"/>
  547. </xsl:when>
  548. <xsl:otherwise>
  549. <xsl:call-template name="condense-posts-trigger-off"/>
  550. </xsl:otherwise>
  551. </xsl:choose>
  552. </xsl:template>
  553. <xsl:template name="condense-posts-trigger-on">
  554. <tr>
  555. <td class="item-label">
  556. Trigger Condensation After (posts):
  557. </td>
  558. <td class="item-value">
  559. <xsl:value-of select="@posts"/>
  560. </td>
  561. </tr>
  562. </xsl:template>
  563. <xsl:template name="condense-posts-trigger-off">
  564. <tr>
  565. <td class="item-label">
  566. Condensation Posts Trigger Disabled
  567. </td>
  568. <td class="item-value"/>
  569. </tr>
  570. </xsl:template>
  571. <xsl:template match="condense/records-trigger">
  572. <xsl:variable name="on-off">
  573. <xsl:call-template name="on-off-switch">
  574. <xsl:with-param name="value" select="@on-off"/>
  575. </xsl:call-template>
  576. </xsl:variable>
  577. <xsl:choose>
  578. <xsl:when test="$on-off = 'on'">
  579. <xsl:call-template name="condense-records-trigger-on"/>
  580. </xsl:when>
  581. <xsl:otherwise>
  582. <xsl:call-template name="condense-records-trigger-off"/>
  583. </xsl:otherwise>
  584. </xsl:choose>
  585. </xsl:template>
  586. <xsl:template name="condense-records-trigger-on">
  587. <tr>
  588. <td class="item-label">
  589. Trigger Condensation At (records):
  590. </td>
  591. <td class="item-value">
  592. <xsl:value-of select="@records"/>
  593. </td>
  594. </tr>
  595. </xsl:template>
  596. <xsl:template name="condense-records-trigger-off">
  597. <tr>
  598. <td class="item-label">
  599. Condensation Records Trigger Disabled
  600. </td>
  601. <td class="item-value"/>
  602. </tr>
  603. </xsl:template>
  604. <xsl:template match="condense/size-trigger">
  605. <xsl:variable name="on-off">
  606. <xsl:call-template name="on-off-switch">
  607. <xsl:with-param name="value" select="@on-off"/>
  608. </xsl:call-template>
  609. </xsl:variable>
  610. <xsl:choose>
  611. <xsl:when test="$on-off = 'on'">
  612. <xsl:call-template name="condense-size-trigger-on"/>
  613. </xsl:when>
  614. <xsl:otherwise>
  615. <xsl:call-template name="condense-size-trigger-off"/>
  616. </xsl:otherwise>
  617. </xsl:choose>
  618. </xsl:template>
  619. <xsl:template name="condense-size-trigger-on">
  620. <tr>
  621. <td class="item-label">
  622. Trigger Condensation At (megabytes):
  623. </td>
  624. <td class="item-value">
  625. <xsl:value-of select="@megabytes"/>
  626. </td>
  627. </tr>
  628. </xsl:template>
  629. <xsl:template name="condense-size-trigger-off">
  630. <tr>
  631. <td class="item-label">
  632. Condensation Size Trigger Disabled
  633. </td>
  634. <td class="item-value"/>
  635. </tr>
  636. </xsl:template>
  637. <xsl:template match="database/checkpoint">
  638. <xsl:variable name="on-off">
  639. <xsl:call-template name="on-off-switch">
  640. <xsl:with-param name="value" select="@on-off"/>
  641. </xsl:call-template>
  642. </xsl:variable>
  643. <xsl:choose>
  644. <xsl:when test="$on-off = 'on'">
  645. <xsl:call-template name="checkpoint-on"/>
  646. </xsl:when>
  647. <xsl:otherwise>
  648. <xsl:call-template name="checkpoint-off"/>
  649. </xsl:otherwise>
  650. </xsl:choose>
  651. </xsl:template>
  652. <xsl:template name="checkpoint-on">
  653. <tr>
  654. <td class="item-label">
  655. Save Checkpoint Every (secs):
  656. </td>
  657. <td class="item-value">
  658. <xsl:value-of select="@secs"/>
  659. </td>
  660. </tr>
  661. </xsl:template>
  662. <xsl:template name="checkpoint-off">
  663. <tr>
  664. <td class="item-label">
  665. Save Checkpoint Disabled
  666. </td>
  667. <td class="item-value"/>
  668. </tr>
  669. </xsl:template>
  670. <xsl:template match="gbudb/regions">
  671. <div class="sub-section">
  672. <div class="section-label">
  673. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/regions/">
  674. Reputation Evaluation Regions
  675. </a>
  676. </div>
  677. <div class="section-item">
  678. <table>
  679. <xsl:apply-templates select="white"/>
  680. <xsl:apply-templates select="caution"/>
  681. <xsl:apply-templates select="black"/>
  682. </table>
  683. </div>
  684. </div>
  685. </xsl:template>
  686. <xsl:template match="regions/white">
  687. <xsl:variable name="on-off">
  688. <xsl:call-template name="on-off-switch">
  689. <xsl:with-param name="value" select="@on-off"/>
  690. </xsl:call-template>
  691. </xsl:variable>
  692. <xsl:choose>
  693. <xsl:when test="$on-off = 'on'">
  694. <xsl:call-template name="white-region-on"/>
  695. </xsl:when>
  696. <xsl:otherwise>
  697. <xsl:call-template name="white-region-off"/>
  698. </xsl:otherwise>
  699. </xsl:choose>
  700. </xsl:template>
  701. <xsl:template name="white-region-off">
  702. <tr>
  703. <td class="item-label">
  704. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/regions/white.jsp">
  705. White Region Disabled
  706. </a>
  707. </td>
  708. <td class="item-value"/>
  709. </tr>
  710. </xsl:template>
  711. <xsl:template name="white-region-on">
  712. <tr>
  713. <td colspan="2" class="chart-value">
  714. <table>
  715. <tr>
  716. <td class="item-label">
  717. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/regions/white.jsp">
  718. White Region Symbol:
  719. </a>
  720. </td>
  721. <td class="item-value">
  722. <xsl:value-of select="@symbol"/>
  723. </td>
  724. </tr>
  725. <xsl:call-template name="edges"/>
  726. <tr><td colspan="2"><hr/></td></tr>
  727. <xsl:apply-templates select="panic"/>
  728. </table>
  729. </td>
  730. </tr>
  731. </xsl:template>
  732. <xsl:template match="white/panic">
  733. <xsl:variable name="on-off">
  734. <xsl:call-template name="on-off-switch">
  735. <xsl:with-param name="value" select="@on-off"/>
  736. </xsl:call-template>
  737. </xsl:variable>
  738. <xsl:choose>
  739. <xsl:when test="$on-off = 'on'">
  740. <xsl:call-template name="white-panic-on"/>
  741. </xsl:when>
  742. <xsl:otherwise>
  743. <xsl:call-template name="white-panic-off"/>
  744. </xsl:otherwise>
  745. </xsl:choose>
  746. </xsl:template>
  747. <xsl:template name="white-panic-on">
  748. <tr>
  749. <td class="item-label">
  750. Auto-Panic Rule Range:
  751. </td>
  752. <td class="item-value">
  753. <xsl:value-of select="@rule-range"/>
  754. </td>
  755. </tr>
  756. </xsl:template>
  757. <xsl:template name="white-panic-off">
  758. <tr>
  759. <td class="item-label">
  760. Auto-Panic Disabled
  761. </td>
  762. <td class="item-value"/>
  763. </tr>
  764. </xsl:template>
  765. <xsl:template name="edges">
  766. <tr>
  767. <td colspan="2">
  768. <table style="border-collapse: collapse;">
  769. <xsl:for-each select="edge">
  770. <tr>
  771. <td class="item-label">
  772. Edge (probability, confidence):
  773. </td>
  774. <td class="chart-value">
  775. <xsl:value-of select="@probability"/>
  776. </td>
  777. <td class="chart-value">
  778. <xsl:value-of select="@confidence"/>
  779. </td>
  780. </tr>
  781. </xsl:for-each>
  782. </table>
  783. </td>
  784. </tr>
  785. </xsl:template>
  786. <xsl:template match="regions/caution">
  787. <xsl:variable name="on-off">
  788. <xsl:call-template name="on-off-switch">
  789. <xsl:with-param name="value" select="@on-off"/>
  790. </xsl:call-template>
  791. </xsl:variable>
  792. <xsl:choose>
  793. <xsl:when test="$on-off = 'on'">
  794. <xsl:call-template name="caution-region-on"/>
  795. </xsl:when>
  796. <xsl:otherwise>
  797. <xsl:call-template name="caution-region-off"/>
  798. </xsl:otherwise>
  799. </xsl:choose>
  800. </xsl:template>
  801. <xsl:template name="caution-region-off">
  802. <tr>
  803. <td class="item-label">
  804. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/regions/caution.jsp">
  805. Caution Region Disabled
  806. </a>
  807. </td>
  808. <td class="item-value"/>
  809. </tr>
  810. </xsl:template>
  811. <xsl:template name="caution-region-on">
  812. <tr>
  813. <td colspan="2" class="chart-value">
  814. <table>
  815. <tr>
  816. <td class="item-label">
  817. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/regions/caution.jsp">
  818. Caution Region Symbol:
  819. </a>
  820. </td>
  821. <td class="item-value">
  822. <xsl:value-of select="@symbol"/>
  823. </td>
  824. </tr>
  825. <xsl:call-template name="edges"/>
  826. </table>
  827. </td>
  828. </tr>
  829. </xsl:template>
  830. <xsl:template match="regions/black">
  831. <xsl:variable name="on-off">
  832. <xsl:call-template name="on-off-switch">
  833. <xsl:with-param name="value" select="@on-off"/>
  834. </xsl:call-template>
  835. </xsl:variable>
  836. <xsl:choose>
  837. <xsl:when test="$on-off = 'on'">
  838. <xsl:call-template name="black-region-on"/>
  839. </xsl:when>
  840. <xsl:otherwise>
  841. <xsl:call-template name="black-region-off"/>
  842. </xsl:otherwise>
  843. </xsl:choose>
  844. </xsl:template>
  845. <xsl:template name="black-region-off">
  846. <tr>
  847. <td class="item-label">
  848. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/regions/black.jsp">
  849. Black Region Disabled
  850. </a>
  851. </td>
  852. <td class="item-value"/>
  853. </tr>
  854. </xsl:template>
  855. <xsl:template name="black-region-on">
  856. <tr>
  857. <td colspan="2" class="chart-value">
  858. <table>
  859. <tr>
  860. <td class="item-label">
  861. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/regions/black.jsp">
  862. Black Region Symbol:
  863. </a>
  864. </td>
  865. <td class="item-value">
  866. <xsl:value-of select="@symbol"/>
  867. </td>
  868. </tr>
  869. <xsl:call-template name="edges"/>
  870. <tr><td colspan="2"><hr/></td></tr>
  871. <xsl:apply-templates select="truncate"/>
  872. <xsl:apply-templates select="sample"/>
  873. </table>
  874. </td>
  875. </tr>
  876. </xsl:template>
  877. <xsl:template match="black/truncate">
  878. <xsl:variable name="on-off">
  879. <xsl:call-template name="on-off-switch">
  880. <xsl:with-param name="value" select="@on-off"/>
  881. </xsl:call-template>
  882. </xsl:variable>
  883. <xsl:choose>
  884. <xsl:when test="$on-off = 'on'">
  885. <xsl:call-template name="black-truncate-on"/>
  886. </xsl:when>
  887. <xsl:otherwise>
  888. <xsl:call-template name="black-truncate-off"/>
  889. </xsl:otherwise>
  890. </xsl:choose>
  891. </xsl:template>
  892. <xsl:template name="black-truncate-on">
  893. <tr>
  894. <td class="item-label">
  895. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/regions/black-trucate.jsp">
  896. Truncate Region Symbol:
  897. </a>
  898. </td>
  899. <td class="item-value">
  900. <xsl:value-of select="@symbol"/>
  901. </td>
  902. </tr>
  903. <tr>
  904. <td class="item-label">
  905. Truncate Minimum Probability:
  906. </td>
  907. <td class="item-value">
  908. <xsl:value-of select="@probability"/>
  909. </td>
  910. </tr>
  911. <tr>
  912. <td class="item-label">
  913. Peek Inside One Truncate Out Of:
  914. </td>
  915. <td class="item-value">
  916. <xsl:value-of select="@peek-one-in"/>
  917. </td>
  918. </tr>
  919. </xsl:template>
  920. <xsl:template name="black-truncate-off">
  921. <tr>
  922. <td class="item-label">
  923. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/regions/black-trucate.jsp">
  924. Truncate Region Disabled
  925. </a>
  926. </td>
  927. <td class="item-value"/>
  928. </tr>
  929. </xsl:template>
  930. <xsl:template match="black/sample">
  931. <xsl:variable name="on-off">
  932. <xsl:call-template name="on-off-switch">
  933. <xsl:with-param name="value" select="@on-off"/>
  934. </xsl:call-template>
  935. </xsl:variable>
  936. <xsl:choose>
  937. <xsl:when test="$on-off = 'on'">
  938. <xsl:call-template name="black-sample-on"/>
  939. </xsl:when>
  940. <xsl:otherwise>
  941. <xsl:call-template name="black-sample-off"/>
  942. </xsl:otherwise>
  943. </xsl:choose>
  944. </xsl:template>
  945. <xsl:template name="black-sample-on">
  946. <tr><td colspan="2"><hr/></td></tr>
  947. <tr>
  948. <td class="item-label">
  949. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/regions/black-sample.jsp">
  950. Sampling Minimum Probability:
  951. </a>
  952. </td>
  953. <td class="item-value">
  954. <xsl:value-of select="@probability"/>
  955. </td>
  956. </tr>
  957. <tr>
  958. <td class="item-label">
  959. Sampling Grabs One Out Of:
  960. </td>
  961. <td class="item-value">
  962. <xsl:value-of select="@grab-one-in"/>
  963. </td>
  964. </tr>
  965. <tr>
  966. <td class="item-label">
  967. Use Passthrough Sampling:
  968. </td>
  969. <td class="item-value">
  970. <xsl:value-of select="@passthrough"/>
  971. </td>
  972. </tr>
  973. <tr>
  974. <td class="item-label">
  975. Passthrough Symbol:
  976. </td>
  977. <td class="item-value">
  978. <xsl:value-of select="@passthrough-symbol"/>
  979. </td>
  980. </tr>
  981. </xsl:template>
  982. <xsl:template name="black-sample-off">
  983. <tr>
  984. <td class="item-label">
  985. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/regions/black-sample.jsp">
  986. Message Sampling Is Disabled
  987. </a>
  988. </td>
  989. <td class="item-value"/>
  990. </tr>
  991. </xsl:template>
  992. <xsl:template match="gbudb/training">
  993. <div class="sub-section">
  994. <div class="section-label">
  995. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/training/">
  996. Automated Training
  997. </a>
  998. </div>
  999. <div class="sub-section">
  1000. <xsl:apply-templates select="bypass"/>
  1001. <xsl:apply-templates select="drilldown"/>
  1002. <xsl:apply-templates select="source"/>
  1003. <xsl:apply-templates select="white"/>
  1004. </div>
  1005. </div>
  1006. </xsl:template>
  1007. <xsl:template match="training/bypass">
  1008. <div class="section-label">
  1009. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/training/bypass.jsp">
  1010. Bypass Directives
  1011. </a>
  1012. </div>
  1013. </xsl:template>
  1014. <xsl:template match="training/bypass">
  1015. <div class="section-label">
  1016. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/training/bypass.jsp">
  1017. Bypass Directives
  1018. </a>
  1019. </div>
  1020. <xsl:apply-templates select="header"/>
  1021. </xsl:template>
  1022. <xsl:template match="bypass/header">
  1023. <div class="section-item">
  1024. <table>
  1025. <tr>
  1026. <td class="chart-label">
  1027. Bypass GBUdb if header
  1028. </td>
  1029. <td class="chart-value">
  1030. <xsl:value-of select="@name"/>
  1031. </td>
  1032. <xsl:if test="@ordinal">
  1033. <td class="chart-label">
  1034. at ordinal
  1035. </td>
  1036. <td class="chart-value">
  1037. <xsl:value-of select="@ordinal"/>
  1038. </td>
  1039. </xsl:if>
  1040. <td class="chart-label">
  1041. contains
  1042. </td>
  1043. <td class="chart-value">
  1044. <xsl:value-of select="@find"/>
  1045. </td>
  1046. </tr>
  1047. </table>
  1048. </div>
  1049. </xsl:template>
  1050. <xsl:template match="training/drilldown">
  1051. <div class="section-label">
  1052. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/training/drilldown.jsp">
  1053. Drill-Down Directives
  1054. </a>
  1055. </div>
  1056. <xsl:apply-templates select="received"/>
  1057. </xsl:template>
  1058. <xsl:template match="drilldown/received">
  1059. <div class="section-item">
  1060. <table>
  1061. <tr>
  1062. <td class="chart-label">
  1063. Ignore Received at ordinal
  1064. </td>
  1065. <td class="chart-value">
  1066. <xsl:value-of select="@ordinal"/>
  1067. </td>
  1068. <td class="chart-label">
  1069. if we find
  1070. </td>
  1071. <td class="chart-value">
  1072. <xsl:value-of select="@find"/>
  1073. </td>
  1074. </tr>
  1075. </table>
  1076. </div>
  1077. </xsl:template>
  1078. <xsl:template match="training/source">
  1079. <div class="section-label">
  1080. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/training/source.jsp">
  1081. Message Source Directives
  1082. </a>
  1083. </div>
  1084. <xsl:apply-templates select="header"/>
  1085. </xsl:template>
  1086. <xsl:template match="source/header">
  1087. <div class="section-item">
  1088. <table>
  1089. <tr>
  1090. <td class="chart-label">
  1091. Use Source Header
  1092. </td>
  1093. <td class="chart-value">
  1094. <xsl:value-of select="@name"/>
  1095. </td>
  1096. <td class="chart-label">
  1097. if we find
  1098. </td>
  1099. <td class="chart-value">
  1100. <xsl:value-of select="@received"/>
  1101. </td>
  1102. <td class="chart-label">
  1103. in Received at ordinal
  1104. </td>
  1105. <td class="chart-value">
  1106. <xsl:value-of select="@ordinal"/>
  1107. </td>
  1108. </tr>
  1109. </table>
  1110. </div>
  1111. </xsl:template>
  1112. <xsl:template match="training/white">
  1113. <div class="section-label">
  1114. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/gbudb/training/white.jsp">
  1115. Treat As White Directives
  1116. </a>
  1117. </div>
  1118. <xsl:apply-templates select="result"/>
  1119. <xsl:apply-templates select="header"/>
  1120. </xsl:template>
  1121. <xsl:template match="white/result">
  1122. <div class="section-item">
  1123. <table>
  1124. <tr>
  1125. <td class="chart-label">
  1126. Record a good event for result code
  1127. </td>
  1128. <td class="chart-value">
  1129. <xsl:value-of select="@code"/>
  1130. </td>
  1131. </tr>
  1132. </table>
  1133. </div>
  1134. </xsl:template>
  1135. <xsl:template match="white/header">
  1136. <div class="section-item">
  1137. <table>
  1138. <tr>
  1139. <td class="chart-label">
  1140. Record a good event if header
  1141. </td>
  1142. <td class="chart-value">
  1143. <xsl:value-of select="@name"/>
  1144. </td>
  1145. <xsl:if test="@ordinal">
  1146. <td class="chart-label">
  1147. at ordinal
  1148. </td>
  1149. <td class="chart-value">
  1150. <xsl:value-of select="@ordinal"/>
  1151. </td>
  1152. </xsl:if>
  1153. <td class="chart-label">
  1154. contains
  1155. </td>
  1156. <td class="chart-value">
  1157. <xsl:value-of select="@find"/>
  1158. </td>
  1159. </tr>
  1160. </table>
  1161. </div>
  1162. </xsl:template>
  1163. <xsl:template match="rule-panics">
  1164. <div class="section rule-panics">
  1165. <div class="section-label">
  1166. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/rule-panics.jsp">
  1167. Rule Panics
  1168. </a>
  1169. </div>
  1170. <div class="section-item">
  1171. <xsl:apply-templates/>
  1172. </div>
  1173. </div>
  1174. </xsl:template>
  1175. <xsl:template match="rule-panics/rule">
  1176. <xsl:value-of select="@id"/><br/>
  1177. </xsl:template>
  1178. <xsl:template match="platform">
  1179. <div class="section platform">
  1180. <div class="section-label">
  1181. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/platform.jsp">
  1182. Platform
  1183. </a>
  1184. </div>
  1185. <xsl:apply-templates/>
  1186. </div>
  1187. </xsl:template>
  1188. <xsl:template match="platform/mdaemon">
  1189. <div class="sub-section">
  1190. <div class="section-label">
  1191. <a href="http://www.armresearch.com/support/articles/software/mDaemonPlugin/">
  1192. Message Sniffer Plugin for MDaemon
  1193. </a>
  1194. </div>
  1195. <xsl:apply-templates select="ip-test"/>
  1196. <xsl:apply-templates select="configurator"/>
  1197. </div>
  1198. </xsl:template>
  1199. <xsl:template match="mdaemon/ip-test">
  1200. <div class="section-item">
  1201. <table>
  1202. <tr>
  1203. <td class="chart-label">
  1204. Reject IPs during SMTP
  1205. </td>
  1206. <xsl:call-template name="chart-on-off-cell">
  1207. <xsl:with-param name="value" select="@on-off"/>
  1208. </xsl:call-template>
  1209. </tr>
  1210. </table>
  1211. </div>
  1212. </xsl:template>
  1213. <xsl:template match="mdaemon/configurator">
  1214. <div class="section-item">
  1215. <table>
  1216. <tr>
  1217. <td class="chart-label">
  1218. Configurator Command
  1219. </td>
  1220. <td class="chart-value">
  1221. <xsl:value-of select="@command"/>
  1222. </td>
  1223. <td class="chart-label">
  1224. Append Configuration Path
  1225. </td>
  1226. <xsl:call-template name="chart-on-off-cell">
  1227. <xsl:with-param name="value" select="@append-path"/>
  1228. </xsl:call-template>
  1229. </tr>
  1230. </table>
  1231. </div>
  1232. </xsl:template>
  1233. <xsl:template match="platform/snf4cgp">
  1234. <div class="sub-section">
  1235. <div class="section-label">
  1236. <a href="http://www.armresearch.com/products/SNF4CGP.jsp">
  1237. Message Sniffer For CommuniGate Pro
  1238. </a>
  1239. </div>
  1240. <div class="section-item">
  1241. <table style="border-collapse: collapse;" class="chart">
  1242. <xsl:apply-templates select="ham"/>
  1243. <tr><td colspan="8"><br/></td></tr>
  1244. <xsl:apply-templates select="spam"/>
  1245. </table>
  1246. </div>
  1247. </div>
  1248. </xsl:template>
  1249. <xsl:template name="snf4cgp-column-names">
  1250. <tr>
  1251. <td class="chart-header">
  1252. Code
  1253. </td>
  1254. <td class="chart-header">
  1255. Action
  1256. </td>
  1257. <td class="chart-header">
  1258. Reason
  1259. </td>
  1260. <td class="chart-header">
  1261. Comment
  1262. </td>
  1263. <td class="chart-header">
  1264. Headers
  1265. </td>
  1266. <td class="chart-header">
  1267. Classic
  1268. </td>
  1269. <td class="chart-header">
  1270. XML
  1271. </td>
  1272. <td class="chart-header">
  1273. Hold Path
  1274. </td>
  1275. </tr>
  1276. </xsl:template>
  1277. <xsl:template match="snf4cgp/ham">
  1278. <tr>
  1279. <td colspan="8" class="chart-header">
  1280. Settings For Good Message Scan Results (ham)
  1281. </td>
  1282. </tr>
  1283. <xsl:call-template name="snf4cgp-column-names"/>
  1284. <xsl:call-template name="snf4cgp-row-data"/>
  1285. <xsl:for-each select="result">
  1286. <xsl:call-template name="snf4cgp-row-data"/>
  1287. </xsl:for-each>
  1288. </xsl:template>
  1289. <xsl:template match="snf4cgp/spam">
  1290. <tr>
  1291. <td colspan="8" class="chart-header">
  1292. Settings For Bad Message Scan Results (spam)
  1293. </td>
  1294. </tr>
  1295. <xsl:call-template name="snf4cgp-column-names"/>
  1296. <xsl:call-template name="snf4cgp-row-data"/>
  1297. <xsl:for-each select="result">
  1298. <xsl:call-template name="snf4cgp-row-data"/>
  1299. </xsl:for-each>
  1300. </xsl:template>
  1301. <xsl:template name="snf4cgp-row-data">
  1302. <tr>
  1303. <td class="chart-label">
  1304. <xsl:if test="@code">
  1305. <xsl:value-of select="@code"/>
  1306. </xsl:if>
  1307. <xsl:if test="name()='ham'">
  1308. *
  1309. </xsl:if>
  1310. <xsl:if test="name()='spam'">
  1311. *
  1312. </xsl:if>
  1313. </td>
  1314. <xsl:choose>
  1315. <xsl:when test="@action">
  1316. <td class="chart-value">
  1317. <xsl:value-of select="@action"/>
  1318. </td>
  1319. </xsl:when>
  1320. <xsl:otherwise>
  1321. <td class="chart-value notset"/>
  1322. </xsl:otherwise>
  1323. </xsl:choose>
  1324. <xsl:choose>
  1325. <xsl:when test="@reason">
  1326. <td class="chart-value">
  1327. <xsl:value-of select="@reason"/>
  1328. </td>
  1329. </xsl:when>
  1330. <xsl:otherwise>
  1331. <td class="chart-value notset"/>
  1332. </xsl:otherwise>
  1333. </xsl:choose>
  1334. <xsl:choose>
  1335. <xsl:when test="@comment">
  1336. <td class="chart-value">
  1337. <xsl:value-of select="@comment"/>
  1338. </td>
  1339. </xsl:when>
  1340. <xsl:otherwise>
  1341. <td class="chart-value notset"/>
  1342. </xsl:otherwise>
  1343. </xsl:choose>
  1344. <xsl:choose>
  1345. <xsl:when test="@headers">
  1346. <xsl:call-template name="chart-on-off-cell">
  1347. <xsl:with-param name="value" select="@headers"/>
  1348. </xsl:call-template>
  1349. </xsl:when>
  1350. <xsl:otherwise>
  1351. <td class="chart-value notset"/>
  1352. </xsl:otherwise>
  1353. </xsl:choose>
  1354. <xsl:choose>
  1355. <xsl:when test="@classic">
  1356. <xsl:call-template name="chart-on-off-cell">
  1357. <xsl:with-param name="value" select="@classic"/>
  1358. </xsl:call-template>
  1359. </xsl:when>
  1360. <xsl:otherwise>
  1361. <td class="chart-value notset"/>
  1362. </xsl:otherwise>
  1363. </xsl:choose>
  1364. <xsl:choose>
  1365. <xsl:when test="@xml">
  1366. <xsl:call-template name="chart-on-off-cell">
  1367. <xsl:with-param name="value" select="@xml"/>
  1368. </xsl:call-template>
  1369. </xsl:when>
  1370. <xsl:otherwise>
  1371. <td class="chart-value notset"/>
  1372. </xsl:otherwise>
  1373. </xsl:choose>
  1374. <xsl:choose>
  1375. <xsl:when test="@hold-path">
  1376. <td class="chart-value">
  1377. <xsl:value-of select="@hold-path"/>
  1378. </td>
  1379. </xsl:when>
  1380. <xsl:otherwise>
  1381. <td class="chart-value notset"/>
  1382. </xsl:otherwise>
  1383. </xsl:choose>
  1384. </tr>
  1385. </xsl:template>
  1386. <xsl:template match="platform/milter">
  1387. <div class="sub-section">
  1388. <div class="section-label">
  1389. <a href="http://www.armresearch.com/products/SNFMilter.jsp">
  1390. Message Sniffer Milter For Sendmail / Postfix
  1391. </a>
  1392. </div>
  1393. <div class="section-item">
  1394. <table>
  1395. <tr>
  1396. <td class="item-label">
  1397. Milter Socket Type:
  1398. </td>
  1399. <td class="item-value">
  1400. <xsl:value-of select="socket/@type"/>
  1401. </td>
  1402. </tr>
  1403. <xsl:if test="socket/@type = 'unix'">
  1404. <tr>
  1405. <td class="item-label">
  1406. Socket Path:
  1407. </td>
  1408. <td class="item-value">
  1409. <xsl:value-of select="socket/@path"/>
  1410. </td>
  1411. </tr>
  1412. <tr>
  1413. <td class="item-label">
  1414. Socket Group:
  1415. </td>
  1416. <td class="iteam-value">
  1417. <xsl:value-of select="socket/@group"/>
  1418. </td>
  1419. </tr>
  1420. </xsl:if>
  1421. <xsl:if test="socket/@type = 'tcp'">
  1422. <tr>
  1423. <td class="item-label">
  1424. Socket IP:
  1425. </td>
  1426. <td class="item-value">
  1427. <xsl:value-of select="socket/@ip"/>
  1428. </td>
  1429. </tr>
  1430. <tr>
  1431. <td class="item-label">
  1432. Socket Port:
  1433. </td>
  1434. <td class="iteam-value">
  1435. <xsl:value-of select="socket/@port"/>
  1436. </td>
  1437. </tr>
  1438. </xsl:if>
  1439. </table>
  1440. </div>
  1441. <div class="section-item">
  1442. <table style="border-collapse: collapse;" class="chart">
  1443. <xsl:apply-templates select="connect"/>
  1444. <tr><td colspan="2"><br/></td></tr>
  1445. <xsl:apply-templates select="scan"/>
  1446. </table>
  1447. </div>
  1448. </div>
  1449. </xsl:template>
  1450. <xsl:template match="milter/connect">
  1451. <tr>
  1452. <td colspan="2" class="chart-header">
  1453. Connect-time Actions
  1454. </td>
  1455. </tr>
  1456. <tr>
  1457. <td class="chart-header">
  1458. GBUdb Range
  1459. </td>
  1460. <td class="chart-header">
  1461. Action
  1462. </td>
  1463. </tr>
  1464. <xsl:if test="white">
  1465. <tr>
  1466. <td class="chart-value">
  1467. White
  1468. </td>
  1469. <td class="chart-value">
  1470. <xsl:value-of select="white/@action"/>
  1471. </td>
  1472. </tr>
  1473. </xsl:if>
  1474. <xsl:if test="caution">
  1475. <tr>
  1476. <td class="chart-value">
  1477. Caution
  1478. </td>
  1479. <td class="chart-value">
  1480. <xsl:value-of select="caution/@action"/>
  1481. </td>
  1482. </tr>
  1483. </xsl:if>
  1484. <xsl:if test="black">
  1485. <tr>
  1486. <td class="chart-value">
  1487. Black
  1488. </td>
  1489. <td class="chart-value">
  1490. <xsl:value-of select="black/@action"/>
  1491. </td>
  1492. </tr>
  1493. </xsl:if>
  1494. <xsl:if test="truncate">
  1495. <tr>
  1496. <td class="chart-value">
  1497. Truncate
  1498. </td>
  1499. <td class="chart-value">
  1500. <xsl:value-of select="truncate/@action"/>
  1501. </td>
  1502. </tr>
  1503. </xsl:if>
  1504. </xsl:template>
  1505. <xsl:template match="milter/scan">
  1506. <tr>
  1507. <td colspan="2" class="chart-header">
  1508. Scan-time Actions
  1509. </td>
  1510. </tr>
  1511. <tr>
  1512. <td class="chart-header">
  1513. Scan Result
  1514. </td>
  1515. <td class="chart-header">
  1516. Action
  1517. </td>
  1518. </tr>
  1519. <xsl:if test="nonzero">
  1520. <tr>
  1521. <td class="chart-value">
  1522. Nonzero
  1523. </td>
  1524. <td class="chart-value">
  1525. <xsl:value-of select="nonzero/@action"/>
  1526. </td>
  1527. </tr>
  1528. </xsl:if>
  1529. <xsl:apply-templates select="result"/>
  1530. </xsl:template>
  1531. <xsl:template match="milter/scan/result">
  1532. <tr>
  1533. <td class="chart-value">
  1534. <xsl:value-of select="@code"/>
  1535. </td>
  1536. <td class="chart-value">
  1537. <xsl:value-of select="@action"/>
  1538. </td>
  1539. </tr>
  1540. </xsl:template>
  1541. <xsl:template match="msg-file">
  1542. <div class="section msg-file">
  1543. <div class="section-label">
  1544. <a href="http://www.armresearch.com/support/articles/software/snfServer/config/node/msg-file.jsp">
  1545. Message Format
  1546. </a>
  1547. </div>
  1548. <div class="section-item">
  1549. <table>
  1550. <xsl:call-template name="line-item">
  1551. <xsl:with-param name="label" select="'Message Data Type:'"/>
  1552. <xsl:with-param name="value" select="@type"/>
  1553. </xsl:call-template>
  1554. </table>
  1555. </div>
  1556. </div>
  1557. </xsl:template>
  1558. </xsl:stylesheet>