Advertisement
rg443

Checkpoint Firewall Rules to HTML

Jun 23rd, 2014
474
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
XML 3.42 KB | None | 0 0
  1. <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  2.     <xsl:output method="xml"/>
  3.    
  4.  
  5. <xsl:variable name="network_objects" select="document('xml/network_objects.xml')/network_objects"/>
  6. <xsl:variable name="services" select="document('xml/services.xml')/services"/>
  7. <xsl:variable name="communities" select="document('xml/communities.xml')/communities"/>
  8.  
  9. <xsl:key name="x" match="fw_policies/fw_policie/rule/rule/src/members/reference/Name | fw_policies/fw_policie/rule/rule/dst/members/reference/Name" use="."/>
  10.  
  11.  
  12. <xsl:template match="/fw_policies/fw_policie">
  13. <style>tr {vertical-align:baseline;} ol{margin-bottom:3px;}</style>
  14. <table cell_padding="3" style="font:menu;border-collapse:collapse;border:1px solid grey;" rules="rows" border="1" width="1600">
  15.  
  16.  
  17. <xsl:for-each select="rule/rule">
  18. <tr>
  19. <xsl:if test="disabled='true'">
  20. <xsl:attribute name="style">color:dimgray;font-style:italic;</xsl:attribute>
  21. </xsl:if>
  22.  
  23. <xsl:choose>
  24. <xsl:when test="Rule_Number">
  25.    
  26.     <td><xsl:value-of select="Rule_Number"/></td>
  27.    
  28.     <td>
  29.     <xsl:if test="action/action/Name='drop' or action/action/Name='reject'">
  30.     <xsl:attribute name="style">color:red;</xsl:attribute>
  31.     </xsl:if>
  32.     <xsl:value-of select="action/action/Name"/></td>
  33.    
  34.     <td>
  35.     <xsl:if test="src/members/reference">
  36.         <ol><xsl:for-each select="src/members/reference"><li><xsl:value-of select="Name"/></li></xsl:for-each></ol>
  37.     </xsl:if>
  38.     <xsl:if test="src/compound/compound">
  39.         <ol><xsl:for-each select="src/compound/compound"><li style="color:blue"><xsl:value-of select="Name"/></li></xsl:for-each></ol>
  40.     </xsl:if>
  41.     </td>
  42.    
  43.     <td><ol><xsl:for-each select="dst/members/reference"><li><xsl:value-of select="Name"/></li></xsl:for-each></ol></td>
  44.    
  45.     <td><ol><xsl:for-each select="services/members/reference"><li><xsl:value-of select="Name"/></li></xsl:for-each></ol></td>
  46.    
  47.     <td><ol><xsl:for-each select="through/members/reference"><li><xsl:value-of select="Name"/></li></xsl:for-each></ol></td>
  48.    
  49.     <td><ol><xsl:for-each select="install/members/reference"><li><xsl:value-of select="Name"/></li></xsl:for-each></ol></td>
  50.    
  51.     <td><xsl:value-of select="track/track/Name"/></td>
  52.    
  53.     <td style="padding-left:10px;border-left:1px solid lightgrey;"><xsl:value-of select="name"/></td>  
  54.     <td><small><xsl:value-of select="comments"/></small></td>
  55.    
  56. </xsl:when>
  57. <xsl:when test="header_text">
  58.         <td colspan="8" style="background-color:#efefef"/>
  59.         <td colspan="2" style="padding-left:10px;background-color:#e0e0e0;border-left:1px solid lightgrey;"><xsl:value-of select="header_text"/></td>
  60.        
  61. </xsl:when>
  62.  
  63. <xsl:otherwise></xsl:otherwise>
  64. </xsl:choose>
  65. </tr>
  66. </xsl:for-each>
  67. </table>
  68.  
  69.  
  70.  
  71.  
  72. <ol style="font:menu">
  73. <xsl:for-each select="rule/rule/src/members/reference/Name | rule/rule/dst/members/reference/Name">
  74.  
  75. <xsl:sort case-order="upper-first" select="."/>
  76. <xsl:if test="generate-id(.) = generate-id(key('x', .)[1])">
  77. <li>
  78. <xsl:value-of select="."/>
  79. <xsl:text> (</xsl:text>
  80. <xsl:value-of select="count(key('x', .))"/>
  81. <xsl:text>)</xsl:text>
  82.  
  83. </li>
  84. </xsl:if>
  85.  
  86. </xsl:for-each>
  87. </ol>
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94. <div style="font:menu;margin-top:100px;border-top:1px solid dimgray;color:dimgray;">Copyright (c) 2011 R. G., Ing. - Advanceded Stylesheets for <a target="_blank" style="text-decoration:underline;color:dimgray;" href="http://www.google.at/search?q=sk30765">Checkpoint Web Visualization Tool (sk30765)</a>.</div>
  95.  
  96. </xsl:template>
  97.  
  98.  
  99. </xsl:stylesheet>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement