! $OpenBSD: Xsystrace.ad,v 1.5 2002/09/29 21:30:34 matthieu Exp $ ! ! Copyright (c) 2002 Matthieu Herrb and Niels Provos ! 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. ! ! 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 THE ! COPYRIGHT HOLDERS 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. ! *background: #d7d7d7 *.font: -*-helvetica-medium-r-*--12-*-*-*-*-*-iso8859-1 *borderWidth: 0 ! ! 3D frame for Forms ! *.Form.displayList:\ foreground gray90;\ lines 1,-2,1,16,-2,16;\ lines 0,-1,-1,-1,-1,15;\ foreground gray40;\ lines 0,-2,0,15,-2,15;\ lines 1,-2,-2,-2,-2,16 *.tip.background: #ffffc0 *.tip.font: -*-helvetica-medium-r-*--10-*-*-*-*-*-iso8859-1 ! ! Generic 3D Menu ! *MenuButton.foreground: gray20 *MenuButton.displayList:\ line-style solid;\ foreground gray40;\ lines 1,-1,-1,-1,-1,1;\ foreground gray90;\ lines -1,0,0,0,0,-1;\ line-style onoffdash;\ foreground gray80;\ draw-rect 1,1,-2,-2 ! *SimpleMenu.?.foreground: gray20 *SimpleMenu.displayList:\ foreground gray40;\ lines 1,-1,-1,-1,-1,1;\ foreground gray90;\ lines -1,0,0,0,0,-1 ! ! Generic 3D Text field ! *Text.?.foreground: gray20 *Text.borderWidth: 0 *Text.background: gray96 *Text.?.cursorColor: rgb:d/5/5 *Text.displayList:\ foreground gray90;\ lines 1,-1,-1,-1,-1,1;\ foreground gray40;\ lines -1,0,0,0,0,-1 ! ! Generic 3D buttons ! *Command.displayList:\ foreground gray40;\ lines 1,-1,-1,-1,-1,1;\ foreground gray90;\ lines -1,0,0,0,0,-1 ! ! Widgets placement ! *date-label.fromHoriz: title-label *processInfo-form.fromVert: title-form *processInfo-form.vertDistance: 0 *syscallInfo-form.fromVert: processInfo-form *syscallInfo-form.vertDistance: 0 *status-form.fromVert: syscallInfo-form *status-form.vertDistance: 0 *errorCode-form.fromVert: status-form *errorCode-form.vertDistance: 0 *specialProc-form.fromHoriz: errorCode-form *specialProc-form.fromVert: status-form *specialProc-form.vertDistance: 0 *buttons-form.fromVert: specialProc-form *buttons-form.vertDistance: 0 ! *processName-label.fromVert: processInfo-label *processName-value.fromHoriz: processName-label *processName-value.fromVert: processInfo-label *processPid-label.fromVert: processName-label *processPid-value.fromHoriz: processPid-label *processPid-value.fromVert: processName-value *policyName-label.fromVert: processPid-label *policyName-value.fromVert: processPid-value *policyName-value.fromHoriz: policyName-label ! *syscallInfo-value.fromVert: syscallInfo-label *filter-label.fromVert: syscallInfo-value *filter-text.fromHoriz: filter-label *filter-text.fromVert: syscallInfo-value *filter-button.fromHoriz: filter-text *filter-button.fromVert: syscallInfo-value *status-value.fromVert: status-label *errorCode-text.fromVert: errorCode-label *errorCode-button.fromHoriz: errorCode-text *errorCode-button.fromVert: errorCode-label *kill-button.fromVert: specialProc-label *review-button.fromHoriz: kill-button *review-button.fromVert: specialProc-label *auto-button.fromHoriz: review-button *auto-button.fromVert: specialProc-label *allow-button.fromHoriz: deny-button *deny-all-button.fromHoriz: allow-button *deny-all-button.horizDistance: 15 *allow-all-button.fromHoriz: deny-all-button ! *review-text.fromVert: review-label *done-button.fromVert: review-text ! *wizard-help-text.fromVert: wizard-help-label *wizard-form.fromVert: wizard-help-form *wizard-form.vertDistance: 0 *wizard-text.fromVert: wizard-label *wizard-ok-button.fromVert: wizard-text *wizard-cancel-button.fromHoriz: wizard-ok-button *wizard-cancel-button.fromVert: wizard-text ! ! Main form ! *.form.displayList: *.wizard-top.displayList: ! ! Logo Display ! *title-form.displayList: *title-label.label: *title-label.width: 209 *title-label.height: 28 *title-label.displayList:\ image xpm:logo.xpm,0,0,0,0 ! *date-label.width: 200 ! ! Process Information ! *processName-label.width: 120 *processName-label.justify: left !*processName-value.font: -*-helvetica-bold-r-*--14-*-*-*-*-*-iso8859-1 *processName-value.foreground: red2 *processName-value.justify: left *processName-value.width: 335 *processPid-label.width: 120 *processPid-label.justify: left !*processPid-value.font: -*-helvetica-bold-r-*--14-*-*-*-*-*-iso8859-1 *processPid-value.foreground: red2 *processPid-value.justify: left *processPid-value.width: 335 *policyName-label.width: 120 *policyName-label.justify: left !*policyName-value.font: -*-helvetica-bold-r-*--14-*-*-*-*-*-iso8859-1 *policyName-value.foreground: red2 *policyName-value.width: 335 *policyName-value.justify: left ! ! Syscall Information ! *syscallInfo-value.font: -*-helvetica-bold-r-*--14-*-*-*-*-*-iso8859-1 *syscallInfo-value.foreground: red2 *syscallInfo-value.width: 460 ! ! Syscall Filter text entry ! *filter-text.width: 300 *filter-text.background: gray90 *filter-text.translations: #override \ Return: filter-changed() ! *status-value.width: 460 *status-value.label: ! ! Special processing buttons ! *kill-button.width: 65 *kill-button.height: 40 *kill-button.displayList:\ foreground gray40;\ lines 1,-1,-1,-1,-1,1;\ foreground gray90;\ lines -1,0,0,0,0,-1;\ image xpm:skull.xpm,5,5,0,0;\ foreground black;\ font -*-helvetica-medium-r-*--12-*-*-*-*-*-iso8859-1;\ draw-string 40,25,Kill ! *review-button.height: 40 ! *auto-button.height: 40 ! *buttons-form.displayList: ! ! Permit button ! *allow-button.width: 100 *allow-button.height: 50 *allow-button.displayList:\ foreground gray40;\ lines 1,-1,-1,-1,-1,1;\ foreground gray90;\ lines -1,0,0,0,0,-1;\ image xpm:permit.xpm,0,0,0,0;\ foreground black;\ font -*-helvetica-medium-r-*--12-*-*-*-*-*-iso8859-1;\ draw-string 55,30,Permit ! ! Deny button ! *deny-button.width: 100 *deny-button.height: 50 *deny-button.displayList:\ foreground gray40;\ lines 1,-1,-1,-1,-1,1;\ foreground gray90;\ lines -1,0,0,0,0,-1;\ image xpm:deny.xpm,0,0,0,0;\ foreground black;\ font -*-helvetica-medium-r-*--12-*-*-*-*-*-iso8859-1;\ draw-string 55,30,Deny ! ! Permit Always button ! *allow-all-button.width: 120 *allow-all-button.height: 50 *allow-all-button.displayList:\ foreground gray40;\ lines 1,-1,-1,-1,-1,1;\ foreground gray90;\ lines -1,0,0,0,0,-1;\ image xpm:permit-always.xpm,5,0,0,0;\ foreground black;\ font -*-helvetica-medium-r-*--12-*-*-*-*-*-iso8859-1;\ draw-string 55,20,"Permit";\ draw-string 60,35,"Always" ! ! Deny Always button ! *deny-all-button.width: 120 *deny-all-button.height: 50 *deny-all-button.displayList:\ foreground gray40;\ lines 1,-1,-1,-1,-1,1;\ foreground gray90;\ lines -1,0,0,0,0,-1;\ image xpm:deny-always.xpm,5,0,0,0;\ foreground black;\ font -*-helvetica-medium-r-*--12-*-*-*-*-*-iso8859-1;\ draw-string 55,20,"Deny";\ draw-string 60,35,"Always"; ! ! *review-text.width: 380 *review-text.height: 70 *review-text.scrollVertical: Always *review-text*borderwidth: 1 ! *wizard-text.width: 100 *wizard-text.height: 100 *wizard-text.verticalList: True *wizard-text.forceColumns: True *wizard-text.defaultColumns: 1 *wizard-text.background: white *wizard-text*borderwidth: 1 ! ! Various labels ! *processInfo-label.label: Process Information *processName-label.label: Process Name: *processPid-label.label: Process ID: *policyName-label.label: Policy Name: *syscallInfo-label.label: System Call Information *filter-label.label: Filter Expression: *filter-button.label: Wizard *status-label.label: Status: *kill-button.label: *review-button.label: Review Filter *auto-button.label: Automatic *allow-button.label: *deny-button.label: *allow-all-button.label: *deny-all-button.label: *review-label.label: Filter List *done-button.label: OK ! *wizard-help-label.label: Systrace Notification *wizard-help-text.label: \ This dialog allows the selection of default policies\n\ for the current application. The following list \n\ describes potential templates that can be used as \n\ a quick start for a new policy. *wizard-label.label: Templates *wizard-ok-button.label: OK *wizard-cancel-button.label: Cancel *errorCode-label.label: Error Code: *errorCode-button.label: ! *errorCode-text.width: 200 *errorCode-text.background: gray90 *errorCode-text.translations: #override \ Return: errorcode-changed() *errorCode-button.width: 25 *errorCode-button.displayList:\ foreground gray90;\ lines -1,0,0,0,0,-1;\ lines 12,15,5,5,20,5;\ foreground gray40;\ lines 1,-1,-1,-1,-1,1;\ lines 12,15,20,5 ! *specialProc-label.label: Special Processing ! ! ! Tips ! *filter-text.tip: \ Enter a filter expression that will \n\ be added to the current policy. *errorCode-button.tip: \ Configure the error code that is \n\ returned to the application if \n\ the system call is denied. *errorCode-text.tip: \ You can enter an error code here\n\ that's not listed in the menu on\n\ the right. *kill-button.tip: \ This button will terminate\n\ the current application. *review-button.tip: \ Review the configured policy\n\ for this system call. *auto-button.tip: \ Detaches the interactive monitoring\n\ from the current policy. *allow-button.tip: \ Allows the current system call. *deny-button.tip: \ Denies the current system call. \n\ The error code above is returned. *allow-all-button.tip: \ Permits this system call forever. No more\n\ monitoring of this system call is happening.\n\ Use this option very carefully. *deny-all-button.tip: \ Denies the application to execute the system\n\ call ever again. The error configured above\n\ will be returned. Use this option carefully.