<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <HTML ><HEAD ><TITLE >Builtin Procedures</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.64 "><LINK REL="HOME" TITLE="DejaGnu" HREF="book1.html"><LINK REL="UP" TITLE="Reference" HREF="reference.html"><LINK REL="PREVIOUS" TITLE="Installation" HREF="installation.html"><LINK REL="NEXT" TITLE="File Map" HREF="filemap.html"></HEAD ><BODY CLASS="SECT1" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >DejaGnu: The GNU Testing Framework</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="installation.html" ><<< Previous</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" >Reference</TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="filemap.html" >Next >>></A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="SECT1" ><H1 CLASS="SECT1" ><A NAME="BUILTINS" >Builtin Procedures</A ></H1 ><P >DejaGnu provides these Tcl procedures.</P ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="COREPROCS" >Core Internal Procedures</A ></H2 ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="MAILFILE" >Mail_file Procedure</A ></H3 ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1662" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >mail_file</TT ></CODE >(<TT CLASS="PARAMETER" ><I >file to subject</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I ></I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="OPENLOGS" >Open_logs Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1676" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >open_logs</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="CLOSELOGS" >Close_logs Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1684" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >close_logs</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="ISBUILD" >Isbuild Procedure</A ></H3 ><P >Tests for a particular build host environment. If the currently configured host matches the argument string, the result is <I CLASS="EMPHASIS" >1</I >; otherwise the result is <I CLASS="EMPHASIS" >0</I >. <I CLASS="EMPHASIS" >host</I > must be a full three-part configure host name; in particular, you may not use the shorter nicknames supported by configure (but you can use wildcard characters, using shell syntax, to specify sets of names). If it is passed a NULL string, then it returns the name of the build canonical configuration.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1695" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >isbuild</TT ></CODE >(<TT CLASS="PARAMETER" ><I >pattern</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >pattern</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="ISREMOTE" >Is_remote Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1709" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >is_remote</TT ></CODE >(<TT CLASS="PARAMETER" ><I >board</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I ></I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="IS3WAY" >is3way Procedure</A ></H3 ><P >Tests for a canadian cross. This is when the tests will be run on a remotly hosted cross compiler. If it is a canadian cross, then the result is <I CLASS="EMPHASIS" >1</I >; otherwise the result is <I CLASS="EMPHASIS" >0</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1725" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >is3way</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="ISHOST" >Ishost Procedure</A ></H3 ><P >Tests for a particular host environment. If the currently configured host matches the argument string, the result is <I CLASS="EMPHASIS" >1</I >; otherwise the result is <I CLASS="EMPHASIS" >0</I >. <I CLASS="EMPHASIS" >host</I > must be a full three-part configure host name; in particular, you may not use the shorter nicknames supported by configure (but you can use wildcard characters, using shell syntax, to specify sets of names).</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1736" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >ishost</TT ></CODE >(<TT CLASS="PARAMETER" ><I >pattern</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I ></I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="ISTARGET" >Istarget Procedure</A ></H3 ><P >Tests for a particular target environment. If the currently configured target matches the argument string, the result is <I CLASS="EMPHASIS" >1</I > ; otherwise the result is <I CLASS="EMPHASIS" >0</I >. target must be a full three-part configure target name; in particular, you may not use the shorter nicknames supported by configure (but you can use wildcard characters, using shell syntax, to specify sets of names). If it is passed a <I CLASS="EMPHASIS" >NULL</I > string, then it returns the name of the build canonical configuration.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1753" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >istarget</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I ></I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="ISNATIVE" >Isnative Procedure</A ></H3 ><P >Tests whether the current configuration has the same host and target. When it runs in a native configuration this procedure returns a <I CLASS="EMPHASIS" >1</I >; otherwise it returns a <I CLASS="EMPHASIS" >0</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1769" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >isnative</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="UNKNOWN" >Unknown Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1777" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >unknown</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="CLONEOUTPUT" >Clone_output Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1791" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >clone_output</TT ></CODE >(<TT CLASS="PARAMETER" ><I >message</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >message</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="RESETVARS" >Reset_vars Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1805" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >reset_vars</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="LOGANDEXIT" >Log_and_exit Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1813" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >log_and_exit</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="LOGSUMMARY" >Log_summary Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1821" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >log_summary</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="CLEANUP" >Cleanup Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1835" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >cleanup</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="SETUPXFAIL" >Setup_xfail Procedure</A ></H3 ><P >Declares that the test is expected to fail on a particular set of configurations. The config argument must be a list of full three-part configure target name; in particular, you may not use the shorter nicknames supported by configure (but you can use the common shell wildcard characters to specify sets of names). The <I CLASS="EMPHASIS" >bugid</I > argument is optional, and used only in the logging file output; use it as a link to a bug-tracking system such as <SPAN CLASS="PRODUCTNAME" >GNATS</SPAN >.</P ><P >Once you use <TT CLASS="FUNCTION" >setup_xfail</TT >, the <TT CLASS="FUNCTION" >fail</TT > and <TT CLASS="FUNCTION" >pass</TT > procedures produce the messages <I CLASS="EMPHASIS" >XFAIL</I > and <I CLASS="EMPHASIS" >XPASS</I > respectively, allowing you to distinguish expected failures (and unexpected success!) from other test outcomes.</P ><DIV CLASS="WARNING" ><P ></P ><TABLE CLASS="WARNING" WIDTH="100%" BORDER="0" ><TR ><TD WIDTH="25" ALIGN="CENTER" VALIGN="TOP" ><IMG SRC="./stylesheet-images/warning.gif" HSPACE="5" ALT="Warning"></TD ><TD ALIGN="LEFT" VALIGN="TOP" ><P >Warning you must clear the expected failure after using setup_xfail in a test case. Any call to <TT CLASS="FUNCTION" >pass </TT >or <TT CLASS="FUNCTION" >fail</TT >l clears the expected failure implicitly; if the test has some other outcome, e.g. an error, you can call <TT CLASS="FUNCTION" >clear_xfail</TT > to clear the expected failure explicitly. Otherwise, the expected-failure declaration applies to whatever test runs next, leading to surprising results.</P ></TD ></TR ></TABLE ></DIV ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1856" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >setup_xfail</TT ></CODE >(<TT CLASS="PARAMETER" ><I >config</I ></TT > <TT CLASS="PARAMETER" ><I >bugid</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >config</I ></TT ></DT ><DD ><P >The config triplet to trigger whether this is an unexpected or expect failure.</P ></DD ><DT ><TT CLASS="PARAMETER" ><I >bugid</I ></TT ></DT ><DD ><P >The optional bugid, used to tie it this test case to a bug tracking system.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="RECORDTEST" >Record_test Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1876" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >record_test</TT ></CODE >(<TT CLASS="PARAMETER" ><I >type</I ></TT > <TT CLASS="PARAMETER" ><I >message</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >type</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >message</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="PASS" >Pass Procedure</A ></H3 ><P >Declares a test to have passed. <TT CLASS="FUNCTION" >pass</TT > writes in the log files a message beginning with <I CLASS="EMPHASIS" >PASS</I > (or <I CLASS="EMPHASIS" >XPASS</I >, if failure was expected), appending the argument <TT CLASS="PARAMETER" ><I >string</I ></TT >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1906" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >pass</TT ></CODE >(<TT CLASS="PARAMETER" ><I >string</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P >The string to use for this PASS message.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FAIL" >Fail Procedure</A ></H3 ><P >Declares a test to have failed. <TT CLASS="FUNCTION" >fail</TT > writes in the log files a message beginning with <I CLASS="EMPHASIS" >FAIL</I > (or <I CLASS="EMPHASIS" >XFAIL</I >, if failure was expected), appending the argument <TT CLASS="PARAMETER" ><I >string</I ></TT >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1924" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >fail</TT ></CODE >(<TT CLASS="PARAMETER" ><I >string</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P >The string to use for this FAIL message.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="XPASS" >Xpass Procedure</A ></H3 ><P >Declares a test to have unexpectably passed, when it was expected to be a failure. <TT CLASS="FUNCTION" >xpass</TT > writes in the log files a message beginning with <I CLASS="EMPHASIS" >XPASS</I > (or <I CLASS="EMPHASIS" >XFAIL</I >, if failure was expected), appending the argument <TT CLASS="PARAMETER" ><I >string</I ></TT >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1942" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >xpass</TT ></CODE >(<TT CLASS="PARAMETER" ><I >string</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P >The string to use for this output state.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="XFAIL" >Xfail Procedure</A ></H3 ><P >Declares a test to have expectably failed. <TT CLASS="FUNCTION" >xfail</TT > writes in the log files a message beginning with <I CLASS="EMPHASIS" >XFAIL</I > (or <I CLASS="EMPHASIS" >PASS</I >, if success was expected), appending the argument <TT CLASS="PARAMETER" ><I >string</I ></TT >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1960" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >xpass</TT ></CODE >(<TT CLASS="PARAMETER" ><I >string</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P >The string to use for this output state.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="SETWARNINGTHRESHOLD" >Set_warning_threshold Procedure</A ></H3 ><P >Sets the value of <SPAN CLASS="SYMBOL" >warning_threshold</SPAN >. A value of <I CLASS="EMPHASIS" >0</I > disables it: calls to <TT CLASS="FUNCTION" >warning</TT > will not turn a <I CLASS="EMPHASIS" >PASS</I > or <I CLASS="EMPHASIS" >FAIL</I > into an <I CLASS="EMPHASIS" >UNRESOLVED</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1980" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >set_warning_threshold</TT ></CODE >(<TT CLASS="PARAMETER" ><I >threshold</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >threshold</I ></TT ></DT ><DD ><P >This is the value of the new warning threshold.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="GETWARNINGTHRESHOLD" >Get_warning_threshold Procedure</A ></H3 ><P >Returns the current value of <SPAN CLASS="SYMBOL" >{warning_threshold</SPAN >. The default value is 3. This value controls how many <TT CLASS="FUNCTION" >warning</TT > procedures can be called before becoming <I CLASS="EMPHASIS" >UNRESOLVED</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN1997" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >get_warning_threshold</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="WARNING" >Warning Procedure</A ></H3 ><P >Declares detection of a minor error in the test case itself. <TT CLASS="FUNCTION" >warning</TT > writes in the log files a message beginning with <I CLASS="EMPHASIS" >WARNING</I >, appending the argument <TT CLASS="PARAMETER" ><I >string</I ></TT >. Use <TT CLASS="FUNCTION" >warning</TT > rather than <TT CLASS="FUNCTION" >perror</TT > for cases (such as communication failure to be followed by a retry) where the test case can recover from the error. If the optional <TT CLASS="PARAMETER" ><I >number</I ></TT > is supplied, then this is used to set the internal count of warnings to that value.</P ><P >As a side effect, <SPAN CLASS="SYMBOL" >warning_threshold</SPAN > or more calls to warning in a single test case also changes the effect of the next <TT CLASS="FUNCTION" >pass</TT > or <TT CLASS="FUNCTION" >fail</TT > command: the test outcome becomes <I CLASS="EMPHASIS" >UNRESOLVED</I > since an automatic <I CLASS="EMPHASIS" >PASS</I > or <I CLASS="EMPHASIS" >FAIL</I > may not be trustworthy after many warnings. If the optional numeric value is <I CLASS="EMPHASIS" >0</I >, then there are no further side effects to calling this function, and the following test outcome doesn't become <I CLASS="EMPHASIS" >UNRESOLVED</I >. This can be used for errors with no known side effects.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2020" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >warning</TT ></CODE >(<TT CLASS="PARAMETER" ><I >string</I ></TT > <TT CLASS="PARAMETER" ><I >number</I ></TT > );<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >number</I ></TT ></DT ><DD ><P >The optional number to set the error counter. Thius is only used to fake out the counter when using the <TT CLASS="FUNCTION" >xfail</TT > procedure to control when it flips the output over to <I CLASS="EMPHASIS" >UNRESOLVED</I > state.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="PERROR" >Perror Procedure</A ></H3 ><P >Declares a severe error in the testing framework itself. <TT CLASS="FUNCTION" >perror</TT > writes in the log files a message beginning with <I CLASS="EMPHASIS" >ERROR</I >, appending the argument <TT CLASS="PARAMETER" ><I >string</I ></TT >.</P ><P >As a side effect, perror also changes the effect of the next <TT CLASS="FUNCTION" >pass</TT > or <TT CLASS="FUNCTION" >fail</TT > command: the test outcome becomes <I CLASS="EMPHASIS" >UNRESOLVED</I >, since an automatic <I CLASS="EMPHASIS" >PASS</I > or <I CLASS="EMPHASIS" >FAIL</I > cannot be trusted after a severe error in the test framework. If the optional numeric value is <I CLASS="EMPHASIS" >0</I >, then there are no further side effects to calling this function, and the following test outcome doesn't become <I CLASS="EMPHASIS" >UNRESOLVED</I >. This can be used for errors with no known side effects.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2053" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >perror</TT ></CODE >(<TT CLASS="PARAMETER" ><I >string</I ></TT > <TT CLASS="PARAMETER" ><I >number</I ></TT > );<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >number</I ></TT ></DT ><DD ><P >The optional number to set the error counter. Thius is only used to fake out the counter when using the <TT CLASS="FUNCTION" >xfail</TT > procedure to control when it flips the output over to <I CLASS="EMPHASIS" >UNRESOLVED</I > state.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="NOTE" >Note Procedure</A ></H3 ><P >Appends an informational message to the log file. <TT CLASS="FUNCTION" >note</TT > writes in the log files a message beginning with <I CLASS="EMPHASIS" >NOTE</I >, appending the argument <TT CLASS="PARAMETER" ><I >string</I ></TT >. Use <TT CLASS="FUNCTION" >note</TT > sparingly. The <TT CLASS="FUNCTION" >verbose</TT > should be used for most such messages, but in cases where a message is needed in the log file regardless of the verbosity level use <TT CLASS="FUNCTION" >note</TT >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2081" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >note</TT ></CODE >(<TT CLASS="PARAMETER" ><I >string</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P >The string to use for this note.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="UNTESTED" >Untested Procedure</A ></H3 ><P >Declares a test was not run. <TT CLASS="FUNCTION" >untested</TT > writes in the log file a message beginning with <I CLASS="EMPHASIS" >UNTESTED</I >, appending the argument <I CLASS="EMPHASIS" >string</I >. For example, you might use this in a dummy test whose only role is to record that a test does not yet exist for some feature.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2098" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >untested</TT ></CODE >(<TT CLASS="PARAMETER" ><I >string</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P >The string to use for this output state.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="UNRESOLVED" >Unresolved Procedure</A ></H3 ><P >Declares a test to have an unresolved outcome. <TT CLASS="FUNCTION" >unresolved</TT > writes in the log file a message beginning with <I CLASS="EMPHASIS" >UNRESOLVED</I >, appending the argument <I CLASS="EMPHASIS" >string</I >. This usually means the test did not execute as expected, and a human being must go over results to determine if it passed or failed (and to improve the test case).</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2115" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >unresolved</TT ></CODE >(<TT CLASS="PARAMETER" ><I >string</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P >The string to use for this output state.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="UNSUPPORTED" >Unsupported Procedure</A ></H3 ><P >Declares that a test case depends on some facility that does not exist in the testing environment. <TT CLASS="FUNCTION" >unsupported</TT > writes in the log file a message beginning with <I CLASS="EMPHASIS" >UNSUPPORTED</I >, appending the argument string.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2131" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >unsupported</TT ></CODE >(<TT CLASS="PARAMETER" ><I >string</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P >The string to use for this output state.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="INITTESTCOUNTS" >Init_testcounts Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2145" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >init_testcounts</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="INCRCOUNT" >Incr_count Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2153" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >incr_count</TT ></CODE >(<TT CLASS="PARAMETER" ><I >name</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >name</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TRANSFORM" >transform Procedure</A ></H3 ><P >Generates a string for the name of a tool as it was configured and installed, given its native name (as the argument <TT CLASS="PARAMETER" ><I >toolname</I ></TT >). This makes the assumption that all tools are installed using the same naming conventions: For example, for a cross compiler supporting the <I CLASS="EMPHASIS" >m68k-vxworks</I > configuration, the result of transform <B CLASS="COMMAND" >gcc</B > is <B CLASS="COMMAND" >m68k-vxworks-gcc</B >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2177" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >transform</TT ></CODE >(<TT CLASS="PARAMETER" ><I >toolname</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >toolname</I ></TT ></DT ><DD ><P >The name of the cross-development program to transform.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="CHECKCONDITIONALXFAIL" >Check_conditional_xfail Procedure</A ></H3 ><P >This procedure adds a condition xfail, based on compiler options used to create a test case executable. If an include options is found in the compiler flags, and it's the right architecture, it'll trigger an <I CLASS="EMPHASIS" >XFAIL</I >. Otherwise it'll produce an ordinary <I CLASS="EMPHASIS" >FAIL</I >. You can also specify flags to exclude. This makes a result be a <I CLASS="EMPHASIS" >FAIL</I >, even if the included options are found. To set the conditional, set the variable <SPAN CLASS="SYMBOL" >compiler_conditional_xfail_data</SPAN > to the fields <TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><PRE CLASS="PROGRAMLISTING" >"[message string] [targets list] [includes list] [excludes list]"</PRE ></TD ></TR ></TABLE > (descriptions below). This is the checked at pass/fail decision time, so there is no need to call the procedure yourself, unless you wish to know if it gets triggered. After a pass/fail, the variable is reset, so it doesn't effect other tests. It returns <I CLASS="EMPHASIS" >1</I > if the conditional is true, or <I CLASS="EMPHASIS" >0</I > if the conditional is false.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2198" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >check_conditional_xfail</TT ></CODE >(<TT CLASS="PARAMETER" ><I >message</I ></TT > <TT CLASS="PARAMETER" ><I >targets</I ></TT > <TT CLASS="PARAMETER" ><I >includes</I ></TT > <TT CLASS="PARAMETER" ><I >excludes</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >message</I ></TT ></DT ><DD ><P >This is the message to print with the normal test result.</P ></DD ><DT ><TT CLASS="PARAMETER" ><I >targets</I ></TT ></DT ><DD ><P >This is a string with the list targets to activate this conditional on.</P ></DD ><DT ><TT CLASS="PARAMETER" ><I >includes</I ></TT ></DT ><DD ><P >This is a list of sets of options to search for in the compiler options to activate this conditional. If any set of the options matches, then this conditional is true.</P ></DD ><DT ><TT CLASS="PARAMETER" ><I >excludes</I ></TT ></DT ><DD ><P >This is a list of sets of options to search for in the compiler options to activate this conditional. If any set of the options matches, (regardless of whether any of the include sets match) then this conditional is de-activated.</P ></DD ></DL ></DIV ><DIV CLASS="EXAMPLE" ><A NAME="AEN2227" ></A ><P ><B >Example 1. Specifying the conditional xfail data</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><PRE CLASS="PROGRAMLISTING" > set compiler_conditional_xfail_data { \ "I sure wish I knew why this was hosed" \ "sparc*-sun*-* *-pc-*-*" \ {"-Wall -v" "-O3"} \ {"-O1" "-Map"} \ } </PRE ></TD ></TR ></TABLE ></DIV ><P >What this does is it matches only for these two targets if "-Wall -v" or "-O3" is set, but neither "-O1" or "-Map" is set. For a set to match, the options specified are searched for independantly of each other, so a "-Wall -v" matches either "-Wall -v" or "-v -Wall". A space seperates the options in the string. Glob-style regular expressions are also permitted.</P ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="CLEARXFAIL" >Clear_xfail Procedure</A ></H3 ><P >Cancel an expected failure (previously declared with <B CLASS="COMMAND" >setup_xfail</B >) for a particular set of configurations. The <TT CLASS="PARAMETER" ><I >config</I ></TT > argument is a list of configuration target names. It is only necessary to call <B CLASS="COMMAND" >clear_xfail</B > if a test case ends without calling either <B CLASS="COMMAND" >pass</B > or <B CLASS="COMMAND" >fail</B >, after calling <B CLASS="COMMAND" >setup_xfail</B >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2240" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >clear_xfail</TT ></CODE >(<TT CLASS="PARAMETER" ><I >config</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >config</I ></TT ></DT ><DD ><P >The configuration triplets to clear.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="VERBOSE" >Verbose Procedure</A ></H3 ><P >Test cases can use this function to issue helpful messages depending on the number of <TT CLASS="OPTION" >--verbose</TT > options on the runtest command line. It prints string if the value of the variable <SPAN CLASS="SYMBOL" >verbose</SPAN > is higher than or equal to the optional number. The default value for number is <I CLASS="EMPHASIS" >1</I >. Use the optional <TT CLASS="OPTION" >-log</TT > argument to cause string to always be added to the log file, even if it won't be printed. Use the optional <TT CLASS="OPTION" >-x</TT > argument to log the test results into a parsable XML file. Use the optional <TT CLASS="OPTION" >-n</TT > argument to print string without a trailing newline. Use the optional <TT CLASS="OPTION" >--</TT > argument if string begins with "-".</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2261" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >verbose</TT ></CODE >(<TT CLASS="PARAMETER" ><I >-log</I ></TT > <TT CLASS="PARAMETER" ><I >-x</I ></TT > <TT CLASS="PARAMETER" ><I >-n</I ></TT > <TT CLASS="PARAMETER" ><I >-r</I ></TT > <TT CLASS="PARAMETER" ><I >string</I ></TT > <TT CLASS="PARAMETER" ><I >number</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >-x</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >-log</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >-n</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >--</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >number</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="LOADLIB" >Load_lib Procedure</A ></H3 ><P >Loads a DejaGnu library file by searching a fixed path built into DejaGnu. If DejaGnu has been installed, it looks in a path starting with the installed library directory. If you are running DejaGnu directly from a source directory, without first running <B CLASS="COMMAND" >make install</B >, this path defaults to the current directory. In either case, it then looks in the current directory for a directory called <TT CLASS="FILENAME" >lib</TT >. If there are duplicate definitions, the last one loaded takes precedence over the earlier ones.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2307" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >load_lib</TT ></CODE >(<TT CLASS="PARAMETER" ><I >filespec</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >filespec</I ></TT ></DT ><DD ><P >The name of the DejaGnu library file to load.</P ></DD ></DL ></DIV ></DIV ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="REMOTEPROCS" >Procedures For Remote Communication</A ></H2 ><P ><TT CLASS="FILENAME" >lib/remote.exp</TT > defines these functions, for establishing and managing communications. Each of these procedures tries to establish the connection up to three times before returning. Warnings (if retries will continue) or errors (if the attempt is abandoned) report on communication failures. The result for any of these procedures is either <I CLASS="EMPHASIS" >-1</I >, when the connection cannot be established, or the spawn ID returned by the <SPAN CLASS="PRODUCTNAME" >Expect</SPAN > command <B CLASS="COMMAND" >spawn</B >.</P ><P >It use the value of the <SPAN CLASS="SYMBOL" >connect</SPAN > field in the <SPAN CLASS="SYMBOL" >target_info</SPAN > array (was <SPAN CLASS="SYMBOL" >connectmode</SPAN > as the type of connection to make. Current supported connection types are tip, kermit, telnet, rsh, rlogin, and netdata. If the <TT CLASS="OPTION" >--reboot</TT > option was used on the runtest command line, then the target is rebooted before the connection is made.</P ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="CALLREMOTE" >Call_remote Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2333" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >call_remote</TT ></CODE >(<TT CLASS="PARAMETER" ><I >type</I ></TT > <TT CLASS="PARAMETER" ><I >proc</I ></TT > <TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >proc</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="CHECKFORBOARDSTATUS" >Check_for_board_status Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2360" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >check_for_board_status</TT ></CODE >(<TT CLASS="PARAMETER" ><I >variable</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >variable</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FILEONBUILD" >File_on_build Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2374" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >file_on_build</TT ></CODE >(<TT CLASS="PARAMETER" ><I >op</I ></TT > <TT CLASS="PARAMETER" ><I >file</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >op</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FILEONHOST" >File_on_host Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2400" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >file_on_host</TT ></CODE >(<TT CLASS="PARAMETER" ><I >op</I ></TT > <TT CLASS="PARAMETER" ><I >file</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >op</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="LOCALEXEC" >Local_exec Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2426" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >local_exec</TT ></CODE >(<TT CLASS="PARAMETER" ><I >commandline</I ></TT > <TT CLASS="PARAMETER" ><I >inp</I ></TT > <TT CLASS="PARAMETER" ><I >outp</I ></TT > <TT CLASS="PARAMETER" ><I >timeout</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >inp</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >outp</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >timeout</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTEBINARY" >Remote_binary Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2453" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_binary</TT ></CODE >(<TT CLASS="PARAMETER" ><I >host</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >host</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTECLOSE" >Remote_close Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2467" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_close</TT ></CODE >(<TT CLASS="PARAMETER" ><I >shellid</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >shellid</I ></TT ></DT ><DD ><P >This is the value returned by a call to <TT CLASS="FUNCTION" >remote_open</TT >. This closes the connection to the target so resources can be used by others. This parameter can be left off if the <SPAN CLASS="SYMBOL" >fileid</SPAN > field in the <SPAN CLASS="SYMBOL" >target_info</SPAN > array is set.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTEDOWNLOAD" >Remote_download Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2484" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_download</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >file</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTEEXEC" >Remote_exec Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2510" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_exec</TT ></CODE >(<TT CLASS="PARAMETER" ><I >hostname</I ></TT > <TT CLASS="PARAMETER" ><I >program</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >hostname</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >program</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTEEXPECT" >Remote_expect Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2536" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_expect</TT ></CODE >(<TT CLASS="PARAMETER" ><I >board</I ></TT > <TT CLASS="PARAMETER" ><I >timeout</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >board</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >timeout</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTEFILE" >Remote_file Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2562" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_file</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTELD" >Remote_ld Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2582" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_ld</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >prog</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >prog</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTELOAD" >Remote_load Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2602" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_load</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >prog</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >prog</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTEOPEN" >Remote_open Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2628" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_open</TT ></CODE >(<TT CLASS="PARAMETER" ><I >type</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >type</I ></TT ></DT ><DD ><P >This is passed <TT CLASS="OPTION" >host</TT > or <TT CLASS="OPTION" >target</TT >. Host or target refers to whether it is a connection to a remote target, or a remote host. This opens the connection to the desired target or host using the default values in the configuration system. It returns that <SPAN CLASS="SYMBOL" >spawn_id</SPAN > of the process that manages the connection. This value can be used in <SPAN CLASS="PRODUCTNAME" >Expect</SPAN > or <B CLASS="COMMAND" >exp_send</B > statements, or passed to other procedures that need the connection process's id. This also sets the <SPAN CLASS="SYMBOL" >fileid</SPAN > field in the <SPAN CLASS="SYMBOL" >target_info</SPAN > array.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTEPOPCONN" >Remote_pop_conn Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2649" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_pop_conn</TT ></CODE >(<TT CLASS="PARAMETER" ><I >host</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >host</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTEPUSHCONN" >Remote_push_conn Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2663" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_push_conn</TT ></CODE >(<TT CLASS="PARAMETER" ><I >host</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >host</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTERAWBINARY" >Remote_raw_binary Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2677" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_raw_binary</TT ></CODE >(<TT CLASS="PARAMETER" ><I >host</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >host</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTERAWCLOSE" >Remote_raw_close Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2691" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_raw_close</TT ></CODE >(<TT CLASS="PARAMETER" ><I >host</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >host</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTERAWFILE" >Remote_raw_file Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2705" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_raw_file</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTERAWLD" >remote_raw_ld Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2725" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_raw_ld</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >prog</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >prog</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTERAWLOAD" >Remote_raw_load Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2745" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_raw_load</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >prog</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >prog</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTERAWOPEN" >Remote_raw_open Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2771" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_raw_open</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTERAWSEND" >Remote_raw_send Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2785" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_raw_send</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >string</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTERAWSPAWN" >Remote_raw_spawn Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2805" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_raw_spawn</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >commandline</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >commandline</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTERAWTRANSMIT" >Remote_raw_transmit Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2825" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_raw_transmit</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >file</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTERAWWAIT" >Remote_raw_wait Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2845" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_raw_wait</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >timeout</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >timeout</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTEREBOOT" >Remote_reboot Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2865" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_reboot</TT ></CODE >(<TT CLASS="PARAMETER" ><I >host</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >host</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTESEND" >Remote_send Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2879" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_send</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >string</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTESPAWN" >Remote_spawn Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2899" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_spawn</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >commandline</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >commandline</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTESWAPCONN" >Remote_swap_conn Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2925" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_swap_conn</TT ></CODE >(<TT CLASS="PARAMETER" ><I >host</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I ></I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTETRANSMIT" >Remote_transmit Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2939" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_transmit</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >file</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTEUPLOAD" >Remote_upload Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2959" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_upload</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >srcfile</I ></TT > <TT CLASS="PARAMETER" ><I >arg</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >srcfile</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >arg</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REMOTEWAIT" >Remote_wait Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN2985" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >remote_wait</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >timeout</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >timeout</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="STANDARDCLOSE" >Standard_close Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3005" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >standard_close</TT ></CODE >(<TT CLASS="PARAMETER" ><I >host</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >host</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="STANDARDDOWNLOAD" >Standard_download Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3019" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >standard_download</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >file</I ></TT > <TT CLASS="PARAMETER" ><I >destfile</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >destfile</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="STANDARDEXEC" >Standard_exec Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3045" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >standard_exec</TT ></CODE >(<TT CLASS="PARAMETER" ><I >hostname</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >hostname</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="STANDARDFILE" >Standard_file Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3065" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >standard_file</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT ><TT CLASS="PARAMETER" ><I >op</I ></TT ><TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I ></I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="STANDARDLOAD" >Standard_load Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3081" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >standard_load</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >prog</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >prog</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="STANDARDREBOOT" >Standard_reboot Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3107" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >standard_reboot</TT ></CODE >(<TT CLASS="PARAMETER" ><I >host</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >host</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="STANDARDSEND" >Standard_send Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3121" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >standard_send</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >string</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="STANDARDSPAWN" >Standard_spawn Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3141" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >standard_spawn</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >commandline</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >commndline</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="STANDARDTRANSMIT" >Standard_transmit Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3161" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >standard_transmit</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >file</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="STANDARDUPLOAD" >Standard_upload Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3181" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >standard_upload</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest srcfile destfile</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >srcfile</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >destfile</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="STANDARDWAIT" >Standard_wait Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3205" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >standard_wait</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >timeout</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >timeout</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="UNIXCLEANFILENAME" >Unix_clean_filename Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3225" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >unix_clean_filename</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >file</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="CONNPROCS" >Procedures For Using Utilities to Connect</A ></H2 ><P >telnet, rsh, tip, kermit</P ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TELNET" >telnet Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3248" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >telnet</TT ></CODE >(<TT CLASS="PARAMETER" ><I >hostname</I ></TT > <TT CLASS="PARAMETER" ><I >port</I ></TT >);<P ></P ></DIV ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3254" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >rlogin</TT ></CODE >(<TT CLASS="PARAMETER" ><I >hostname</I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="RSH" >rsh Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3262" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >rsh</TT ></CODE >(<TT CLASS="PARAMETER" ><I >hostname</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >hostname</I ></TT ></DT ><DD ><P >This refers to the IP address or name (for example, an entry in <TT CLASS="FILENAME" >/etc/hosts</TT >) for this target. The procedure names reflect the Unix utility used to establish a connection. The optional <TT CLASS="PARAMETER" ><I >port</I ></TT > is used to specify the IP port number. The value of the <TT CLASS="PARAMETER" ><I >netport</I ></TT > field in the <SPAN CLASS="SYMBOL" >target_info</SPAN > array is used. (was <SPAN CLASS="SYMBOL" >$netport</SPAN >) This value has two parts, the hostname and the port number, seperated by a <I CLASS="EMPHASIS" >:</I >. If host or target is used in the <SPAN CLASS="SYMBOL" >hostname</SPAN > field, than the config array is used for all information.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TIP" >Tip Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3283" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >tip</TT ></CODE >(<TT CLASS="PARAMETER" ><I >port</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >port</I ></TT ></DT ><DD ><P >Connect using the Unix utility <B CLASS="COMMAND" >tip</B >. <TT CLASS="PARAMETER" ><I >Port</I ></TT >must be a name from the <SPAN CLASS="PRODUCTNAME" >tip</SPAN > configuration file <TT CLASS="FILENAME" >/etc/remote</TT >. Often, this is called <SPAN CLASS="SYMBOL" >hardwire</SPAN >, or something like <SPAN CLASS="SYMBOL" >ttya</SPAN >. This file holds all the configuration data for the serial port. The value of the <SPAN CLASS="SYMBOL" >serial</SPAN > field in the <SPAN CLASS="SYMBOL" >target_info</SPAN > array is used. (was <SPAN CLASS="SYMBOL" >$serialport</SPAN >) If <TT CLASS="OPTION" >host</TT > or <TT CLASS="OPTION" >target</TT > is used in the <TT CLASS="PARAMETER" ><I >port</I ></TT > field, than the config array is used for all information. the config array is used for all information.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="KERMIT" >Kermit Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3309" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >kermit</TT ></CODE >(<TT CLASS="PARAMETER" ><I >port</I ></TT > <TT CLASS="PARAMETER" ><I >bps</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >port</I ></TT ></DT ><DD ><P >Connect using the program <B CLASS="COMMAND" >kermit</B >. <TT CLASS="PARAMETER" ><I >Port</I ></TT > is the device name, e.g. <TT CLASS="FILENAME" >/dev/ttyb</TT >. </P ></DD ><DT ><TT CLASS="PARAMETER" ><I >bps</I ></TT ></DT ><DD ><P ><TT CLASS="PARAMETER" ><I >bps</I ></TT > is the line speed to use (in its per second) for the connection. The value of the <SPAN CLASS="SYMBOL" >serial</SPAN > field in the <SPAN CLASS="SYMBOL" >target_info</SPAN > array is used. (was <SPAN CLASS="SYMBOL" >$serialport</SPAN >) If <TT CLASS="OPTION" >host</TT > or <TT CLASS="OPTION" >target</TT > is used in the <TT CLASS="PARAMETER" ><I >port</I ></TT > field, than the config array is used for all information. the config array is used for all information.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="KERMITOPEN" >kermit_open Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3339" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >kermit_open</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="KERMITCOMMAND" >Kermit_command Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3359" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >kermit_command</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="KERMITSEND" >Kermit_send Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3379" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >kermit_send</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest string args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >string</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="KERMITTRANSMIT" >Kermit_transmit Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3403" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >kermit_transmit</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >file</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TELNETOPEN" >Telnet_open Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3429" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >telnet_open</TT ></CODE >(<TT CLASS="PARAMETER" ><I >hostname</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >hostname</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TELNETBINARY" >Telnet_binary Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3449" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >telnet_binary</TT ></CODE >(<TT CLASS="PARAMETER" ><I >hostname</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >hostname</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TELNETTRANSMIT" >Telnet_transmit Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3463" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >telnet_transmit</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >file</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TIPOPEN" >Tip_open Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3489" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >tip_open</TT ></CODE >(<TT CLASS="PARAMETER" ><I >hostname</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >hostname</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="RLOGINOPEN" >Rlogin_open Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3503" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >rlogin_open</TT ></CODE >(<TT CLASS="PARAMETER" ><I >arg</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >arg</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="RLOGINSPAWN" >Rlogin_spawn Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3517" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >rlogin_spawn</TT ></CODE >(<TT CLASS="PARAMETER" ><I >dest</I ></TT > <TT CLASS="PARAMETER" ><I >cmdline</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >dest</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >cmdline</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="RSHOPEN" >Rsh_open Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3537" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >rsh_open</TT ></CODE >(<TT CLASS="PARAMETER" ><I >hostname</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >hostname</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="RSHDOWNLOAD" >Rsh_download Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3551" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >rsh_download</TT ></CODE >(<TT CLASS="PARAMETER" ><I >desthost</I ></TT > <TT CLASS="PARAMETER" ><I >srcfile</I ></TT > <TT CLASS="PARAMETER" ><I >destfile</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >desthost</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >srcfile</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >destfile</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="RSHUPLOAD" >Rsh_upload Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3577" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >rsh_upload</TT ></CODE >(<TT CLASS="PARAMETER" ><I >desthost</I ></TT > <TT CLASS="PARAMETER" ><I >srcfile</I ></TT > <TT CLASS="PARAMETER" ><I >destfile</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >desthost</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >srcfile</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >destfile</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="RSHEXEC" >Rsh_exec Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3603" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >rsh_exec</TT ></CODE >(<TT CLASS="PARAMETER" ><I >boardname</I ></TT > <TT CLASS="PARAMETER" ><I >cmd</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >boardname</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >cmd</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FTPOPEN" >Ftp_open Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3629" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >ftp_open</TT ></CODE >(<TT CLASS="PARAMETER" ><I >host</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >host</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FTPUPLOAD" >Ftp_upload Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3643" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >ftp_upload</TT ></CODE >(<TT CLASS="PARAMETER" ><I >host</I ></TT > <TT CLASS="PARAMETER" ><I >remotefile</I ></TT > <TT CLASS="PARAMETER" ><I >localfile</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >host</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >remotefile</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >localfile</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FTPDOWNLOAD" >Ftp_download Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3669" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >ftp_download</TT ></CODE >(<TT CLASS="PARAMETER" ><I >host</I ></TT > <TT CLASS="PARAMETER" ><I >localfile</I ></TT > <TT CLASS="PARAMETER" ><I >remotefile</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >host</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >localfile</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >remotefile</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FTPCLOSE" >Ftp_close Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3695" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >ftp_close</TT ></CODE >(<TT CLASS="PARAMETER" ><I >host</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >host</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TIPDOWNLOAD" >Tip_download Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3709" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >tip_download</TT ></CODE >(<TT CLASS="PARAMETER" ><I >spawnid</I ></TT > <TT CLASS="PARAMETER" ><I >file</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >spawnid</I ></TT ></DT ><DD ><P >Download <TT CLASS="OPTION" >file</TT > to the process <SPAN CLASS="SYMBOL" >spawnid</SPAN > (the value returned when the connection was established), using the <B CLASS="COMMAND" >~put</B > command under <SPAN CLASS="PRODUCTNAME" >tip</SPAN >. Most often used for single board computers that require downloading programs in ASCII S-records. Returns <I CLASS="EMPHASIS" >1</I > if an error occurs, <I CLASS="EMPHASIS" >0</I > otherwise.</P ></DD ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P >This is the filename to downlaod.</P ></DD ></DL ></DIV ></DIV ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="TARGETPROCS" >Procedures For Target Boards</A ></H2 ><P ></P ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="DEFAULTLINK" >Default_link Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3738" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >default_link</TT ></CODE >(<TT CLASS="PARAMETER" ><I >board</I ></TT > <TT CLASS="PARAMETER" ><I >objects</I ></TT > <TT CLASS="PARAMETER" ><I >destfile</I ></TT > <TT CLASS="PARAMETER" ><I >flags</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >board</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >objects</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >destfile</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >flags</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="DEFAULTTARGETASSEMBLE" >Default_target_assemble Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3770" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >default_target_assemble</TT ></CODE >(<TT CLASS="PARAMETER" ><I >source</I ></TT > <TT CLASS="PARAMETER" ><I >destfile</I ></TT > <TT CLASS="PARAMETER" ><I >flags</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >source</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >destfile</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >flags</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="DEFAULTTARGETCOMPILE" >default_target_compile Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3796" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >default_target_compile</TT ></CODE >(<TT CLASS="PARAMETER" ><I >source</I ></TT > <TT CLASS="PARAMETER" ><I >destfile</I ></TT > <TT CLASS="PARAMETER" ><I >type</I ></TT > <TT CLASS="PARAMETER" ><I >options</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >source</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >destfile</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >type</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >options</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="POPCONFIG" >Pop_config Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3828" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >pop_config</TT ></CODE >(<TT CLASS="PARAMETER" ><I >type</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >type</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="PRUNEWARNINGS" >Prune_warnings Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3842" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >prune_warnings</TT ></CODE >(<TT CLASS="PARAMETER" ><I >text</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >text</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="PUSHBUILD" >Push_build Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3856" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >push_build</TT ></CODE >(<TT CLASS="PARAMETER" ><I >name</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >name</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="PUSHCONFIG" >push_config Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3870" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >push_config</TT ></CODE >(<TT CLASS="PARAMETER" ><I >type</I ></TT > <TT CLASS="PARAMETER" ><I >name</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >type</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >name</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="REBOOTTARGET" >Reboot_target Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3890" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >reboot_target</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TARGETASSEMBLE" >Target_assemble Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3898" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >target_assemble</TT ></CODE >(<TT CLASS="PARAMETER" ><I >source destfile flags</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >source</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >destfile</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >flags</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TARGETCOMPILE" >Target_compile Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3922" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >target_compile</TT ></CODE >(<TT CLASS="PARAMETER" ><I >source</I ></TT > <TT CLASS="PARAMETER" ><I >destfile</I ></TT > <TT CLASS="PARAMETER" ><I >type</I ></TT > <TT CLASS="PARAMETER" ><I >options</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >source</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >destfile</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >type</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >options</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="TARGETDB" >Target Database Procedures</A ></H2 ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="BOARDINFO" >Board_info Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3956" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >board_info</TT ></CODE >(<TT CLASS="PARAMETER" ><I >machine</I ></TT > <TT CLASS="PARAMETER" ><I >op</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >machine</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >op</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="HOSTINFO" >Host_info Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN3982" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >host_info</TT ></CODE >(<TT CLASS="PARAMETER" ><I >op</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >op</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="SETBOARDINFO" >Set_board_info Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4002" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >set_board_info</TT ></CODE >(<TT CLASS="PARAMETER" ><I >entry</I ></TT > <TT CLASS="PARAMETER" ><I >value</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >entry</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >value</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="SETCURRTARGETINFO" >Set_currtarget_info Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4022" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >set_currtarget_info</TT ></CODE >(<TT CLASS="PARAMETER" ><I >entry</I ></TT > <TT CLASS="PARAMETER" ><I >value</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >entry</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >value</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TARGETINFO" >Target_info Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4042" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >target_info</TT ></CODE >(<TT CLASS="PARAMETER" ><I >op</I ></TT > <TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >op</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="UNSETBOARDINFO" >Unset_board_info Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4062" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >unset_board_info</TT ></CODE >(<TT CLASS="PARAMETER" ><I >entry</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >entry</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="UNSETCURRTARGETINFO" >Unset_currtarget_info Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4076" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >unset_currtarget_info</TT ></CODE >(<TT CLASS="PARAMETER" ><I >entry</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >entry</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="PUSHTARGET" >Push_target Procedure</A ></H3 ><P >This makes the target named <I CLASS="EMPHASIS" >name</I > be the current target connection. The value of <I CLASS="EMPHASIS" >name</I > is an index into the <SPAN CLASS="SYMBOL" >target_info</SPAN > array and is set in the global config file.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4093" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >push_target</TT ></CODE >(<TT CLASS="PARAMETER" ><I >name</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >name</I ></TT ></DT ><DD ><P >The name of the target to make current connection.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="POPTARGET" >Pop_target Procedure</A ></H3 ><P >This unsets the current target connection.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4107" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >pop_target</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="LISTTARGETS" >List_targets Procedure</A ></H3 ><P >This lists all the supported targets for this architecture.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4115" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >list_targets</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="PUSHHOST" >Push_host Procedure</A ></H3 ><P >This makes the host named <I CLASS="EMPHASIS" >name</I > be the current remote host connection. The value of <I CLASS="EMPHASIS" >name</I > is an index into the <SPAN CLASS="SYMBOL" >target_info</SPAN > array and is set in the global config file.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4126" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >push_host</TT ></CODE >(<TT CLASS="PARAMETER" ><I >name</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >name</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="POPHOST" >Pop_host Procedure</A ></H3 ><P >This unsets the current host connection.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4140" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >pop_host</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="COMPILE" >Compile Procedure</A ></H3 ><P >This invokes the compiler as set by CC to compile the file <TT CLASS="FILENAME" >file</TT >. The default options for many cross compilation targets are <I CLASS="EMPHASIS" >guessed</I > by DejaGnu, and these options can be added to by passing in more parameters as arguments to <B CLASS="COMMAND" >compile</B >. Optionally, this will also use the value of the <I CLASS="EMPHASIS" >cflags</I > field in the target config array. If the host is not the same as the build machines, then then compiler is run on the remote host using <B CLASS="COMMAND" >execute_anywhere</B >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4153" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >compile</TT ></CODE >(<TT CLASS="PARAMETER" ><I >file</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="ARCHIVE" >Archive Procedure</A ></H3 ><P >This produces an archive file. Any parameters passed to <B CLASS="COMMAND" >archive</B > are used in addition to the default flags. Optionally, this will also use the value of the <I CLASS="EMPHASIS" >arflags</I > field in the target config array. If the host is not the same as the build machines, then then archiver is run on the remote host using <B CLASS="COMMAND" >execute_anywhere</B >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4170" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >archive</TT ></CODE >(<TT CLASS="PARAMETER" ><I >file</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="RANLIB" >Ranlib Procedure</A ></H3 ><P >This generates an index for the archive file for systems that aren't POSIX yet. Any parameters passed to <B CLASS="COMMAND" >ranlib</B > are used in for the flags.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4185" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >ranlib</TT ></CODE >(<TT CLASS="PARAMETER" ><I >file</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >file</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="EXECUTEANYWHERE" >Execute_anywhere Procedure</A ></H3 ><P >This executes the <I CLASS="EMPHASIS" >cmdline</I > on the proper host. This should be used as a replacement for the Tcl command <B CLASS="COMMAND" >exec</B > as this version utilizes the target config info to execute this command on the build machine or a remote host. All config information for the remote host must be setup to have this command work. If this is a canadian cross, (where we test a cross compiler that runs on a different host then where DejaGnu is running) then a connection is made to the remote host and the command is executed there. It returns either REMOTERROR (for an error) or the output produced when the command was executed. This is used for running the tool to be tested, not a test case.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4201" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >execute_anywhere</TT ></CODE >(<TT CLASS="PARAMETER" ><I >cmdline</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >cmdline</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="PLATFORMPROCS" >Platform Dependant Procedures</A ></H2 ><P >Each combination of target and tool requires some target-dependent procedures. The names of these procedures have a common form: the tool name, followed by an underbar <I CLASS="EMPHASIS" >_</I >, and finally a suffix describing the procedure's purpose. For example, a procedure to extract the version from <SPAN CLASS="PRODUCTNAME" >GDB</SPAN > is called <SPAN CLASS="SYMBOL" >gdb_version</SPAN >.</P ><P ><B CLASS="COMMAND" >runtest</B > itself calls only two of these procedures, <SPAN CLASS="SYMBOL" >${tool}_exit</SPAN > and <SPAN CLASS="SYMBOL" >${tool}_version</SPAN >; these procedures use no arguments.</P ><P >The other two procedures, <SPAN CLASS="SYMBOL" >${tool}_start</SPAN > and <SPAN CLASS="SYMBOL" >${tool}_load</SPAN >}, are only called by the test suites themselves (or by testsuite-specific initialization code); they may take arguments or not, depending on the conventions used within each test suite.</P ><P >The usual convention for return codes from any of these procedures (although it is not required by <B CLASS="COMMAND" >runtest</B >) is to return <I CLASS="EMPHASIS" >0</I > if the procedure succeeded, <I CLASS="EMPHASIS" >1</I > if it failed, and <I CLASS="EMPHASIS" >-1</I > if there was a communication error.</P ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TOOLSTART" >${tool}_start Procedure</A ></H3 ><P >Starts a particular tool. For an interactive tool, <TT CLASS="FUNCTION" >${tool}_start</TT > starts and initializes the tool, leaving the tool up and running for the test cases; an example is <TT CLASS="FUNCTION" >gdb_start</TT >, the start function for GDB. For a batch oriented tool, <TT CLASS="FUNCTION" >${tool}_start</TT > is optional; the recommended convention is to let <TT CLASS="FUNCTION" >${tool}_start</TT > run the tool, leaving the output in a variable called <TT CLASS="FUNCTION" >comp_output</TT >. Test scripts can then analyze <TT CLASS="FUNCTION" >$comp_output</TT > to determine the test results. An example of this second kind of start function is <TT CLASS="FUNCTION" >gcc_start</TT >, the start function for GCC.</P ><P >DejaGnu itself does not call <TT CLASS="FUNCTION" >${tool}_start</TT >. The initialization module <TT CLASS="FUNCTION" >${tool}_init.exp</TT > must call <TT CLASS="FUNCTION" >${tool}_start</TT > for interactive tools; for batch-oriented tools, each individual test script calls <TT CLASS="FUNCTION" >${tool}_start</TT > (or makes other arrangements to run the tool).</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4245" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >${tool}_start</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TOOLLOAD" >${tool}_load Procedure</A ></H3 ><P >Loads something into a tool. For an interactive tool, this conditions the tool for a particular test case; for example, <TT CLASS="FUNCTION" >gdb_load</TT > loads a new executable file into the debugger. For batch oriented tools, <TT CLASS="FUNCTION" >${tool}_load</TT > may do nothing---though, for example, the GCC support uses <TT CLASS="FUNCTION" >gcc_load</TT > to load and run a binary on the target environment. Conventionally, <TT CLASS="FUNCTION" >${tool}_load</TT > leaves the output of any program it runs in a variable called <SPAN CLASS="SYMBOL" >$exec_output</SPAN >. Writing <TT CLASS="FUNCTION" >${tool}_load</TT > can be the most complex part of extending DejaGnu to a new tool or a new target, if it requires much communication coding or file downloading. Test scripts call <TT CLASS="FUNCTION" >${tool}_load</TT >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4260" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >${tool}_load</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TOOLEXIT" >${tool}_exit Procedure</A ></H3 ><P >Cleans up (if necessary) before DejaGnu exits. For interactive tools, this usually ends the interactive session. You can also use <TT CLASS="FUNCTION" >${tool}_exit</TT > to remove any temporary files left over from the tests. <B CLASS="COMMAND" >runtest</B > calls <TT CLASS="FUNCTION" >${tool}_exit</TT >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4271" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >${tool}_exit</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="TOOLVERSION" >${tool}_version Procedure</A ></H3 ><P >Prints the version label and number for <SPAN CLASS="SYMBOL" >${tool}</SPAN >. This is called by the DejaGnu procedure that prints the final summary report. The output should consist of the full path name used for the tested tool, and its version number.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4280" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >${tool}_version</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="UTILPROCS" >Utility Procedures</A ></H2 ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="GETDIRS" >Getdirs Procedure</A ></H3 ><P >Returns a list of all the directories in the single directory a single directory that match an optional pattern. </P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4290" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >getdirs</TT ></CODE >(<TT CLASS="PARAMETER" ><I >rootdir</I ></TT > <TT CLASS="PARAMETER" ><I >pattern</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ><DT ><TT CLASS="PARAMETER" ><I >pattern</I ></TT ></DT ><DD ><P >If you do not specify <TT CLASS="PARAMETER" ><I >pattern</I ></TT >, <TT CLASS="FUNCTION" >Getdirs</TT > assumes a default pattern of <I CLASS="EMPHASIS" >*</I >. You may use the common shell wildcard characters in the pattern. If no directories match the pattern, then a NULL string is returned</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FIND" >Find Procedure</A ></H3 ><P >Search for files whose names match <I CLASS="EMPHASIS" >pattern</I > (using shell wildcard characters for filename expansion). Search subdirectories recursively, starting at <I CLASS="EMPHASIS" >rootdir</I >. The result is the list of files whose names match; if no files match, the result is empty. Filenames in the result include all intervening subdirectory names. If no files match the pattern, then a NULL string is returned.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4315" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >find</TT ></CODE >(<TT CLASS="PARAMETER" ><I >rootdir</I ></TT > <TT CLASS="PARAMETER" ><I >pattern</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >rootdir</I ></TT ></DT ><DD ><P >The top level directory to search the search from.</P ></DD ><DT ><TT CLASS="PARAMETER" ><I >pattern</I ></TT ></DT ><DD ><P >A csh "glob" style regular expression reprsenting the files to find.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="WHICH" >Which Procedure</A ></H3 ><P >Searches the execution path for an executable file <I CLASS="EMPHASIS" >binary</I >, like the the BSD <B CLASS="COMMAND" >which</B > utility. This procedure uses the shell environment variable <I CLASS="EMPHASIS" >PATH</I >. It returns <I CLASS="EMPHASIS" >0</I > if the binary is not in the path, or if there is no <I CLASS="EMPHASIS" >PATH</I > environment variable. If <B CLASS="COMMAND" >binary</B > is in the path, it returns the full path to <B CLASS="COMMAND" >binary</B >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4342" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >which</TT ></CODE >(<TT CLASS="PARAMETER" ><I >file</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >binary</I ></TT ></DT ><DD ><P >The executable program or shell script to look for.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="GREP" >Grep Procedure</A ></H3 ><P >Search the file called <TT CLASS="FILENAME" >filename</TT > (a fully specified path) for lines that contain a match for regular expression <I CLASS="EMPHASIS" >regexp</I >. The result is a list of all the lines that match. If no lines match, the result is an empty string. Specify <I CLASS="EMPHASIS" >regexp</I > using the standard regular expression style used by the Unix utility program grep.</P ><P >Use the optional third argument <I CLASS="EMPHASIS" >line</I > to start lines in the result with the line number in <TT CLASS="FILENAME" >filename</TT >. (This argument is simply an option flag; type it just as shown <TT CLASS="OPTION" >--line</TT >.)</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4363" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >grep</TT ></CODE >(<TT CLASS="PARAMETER" ><I >filename</I ></TT > <TT CLASS="PARAMETER" ><I >regexp</I ></TT > <TT CLASS="PARAMETER" ><I >--line</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >filename</I ></TT ></DT ><DD ><P >The file to search.</P ></DD ><DT ><TT CLASS="PARAMETER" ><I >regexp</I ></TT ></DT ><DD ><P >The Unix style regular expression (as used by the <B CLASS="COMMAND" >grep</B > Unix utility) to search for.</P ></DD ><DT ><TT CLASS="PARAMETER" ><I >--line</I ></TT ></DT ><DD ><P >Prefix the line number to each line where the regexp matches.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="PRUNE" >Prune Procedure</A ></H3 ><P >Remove elements of the Tcl list <I CLASS="EMPHASIS" >list</I >. Elements are fields delimited by spaces. The result is a copy of list, without any elements that match <I CLASS="EMPHASIS" >pattern</I >. You can use the common shell wildcard characters to specify the pattern.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4392" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >prune</TT ></CODE >(<TT CLASS="PARAMETER" ><I >list</I ></TT > <TT CLASS="PARAMETER" ><I >pattern</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >list</I ></TT ></DT ><DD ><P >A Tcl list containing the original data. Commonly this is the output of a batch executed command, like running a compiler.</P ></DD ><DT ><TT CLASS="PARAMETER" ><I >pattern</I ></TT ></DT ><DD ><P >The csh shell "glob" style pattern to search for.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="SLAY" >Slay Procedure</A ></H3 ><P >This look in the process table for <I CLASS="EMPHASIS" >name</I > and send it a unix SIGINT, killing the process. This will only work under NT if you have Cygwin or another Unix system for NT installed.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4413" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >slay</TT ></CODE >(<TT CLASS="PARAMETER" ><I >name</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >name</I ></TT ></DT ><DD ><P >The name of the program to kill.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="ABSOLUTE" >Absolute Procedure</A ></H3 ><P >This procedure takes the relative <I CLASS="EMPHASIS" >path</I >, and converts it to an absolute path.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4428" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >absolute</TT ></CODE >(<TT CLASS="PARAMETER" ><I >path</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >path</I ></TT ></DT ><DD ><P >The path to convert.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="PSOURCE" >Psource Procedure</A ></H3 ><P >This sources the file <I CLASS="EMPHASIS" >filename</I >, and traps all errors. It also ignores all extraneous output. If there was an error it returns a <I CLASS="EMPHASIS" >1</I >, otherwise it returns a <I CLASS="EMPHASIS" >0</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4445" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >psource</TT ></CODE >(<TT CLASS="PARAMETER" ><I >file</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >filename</I ></TT ></DT ><DD ><P >The filename to Tcl script to source.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="RUNTESTFILEP" >Runtest_file_p Procedure</A ></H3 ><P >Search <I CLASS="EMPHASIS" >runtest</I >s for <I CLASS="EMPHASIS" >testcase</I > and return <I CLASS="EMPHASIS" >1</I > if found, <I CLASS="EMPHASIS" >0</I > if not. <I CLASS="EMPHASIS" >runtests</I > is a list of two elements. The first is a copy of what was on the right side of the <I CLASS="EMPHASIS" >=</I > if <TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><PRE CLASS="PROGRAMLISTING" >foo.exp="..."</PRE ></TD ></TR ></TABLE >" was specified, or an empty string if no such argument is present. The second is the pathname of the current testcase under consideration. This is used by tools like compilers where each testcase is a file.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4466" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >runtest_file_p</TT ></CODE >(<TT CLASS="PARAMETER" ><I >runtests</I ></TT > <TT CLASS="PARAMETER" ><I >testcase</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >runtests</I ></TT ></DT ><DD ><P >The list of patterns to compare against. </P ></DD ><DT ><TT CLASS="PARAMETER" ><I >testcase</I ></TT ></DT ><DD ><P >The test case filename.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="DIFF" >Diff Procedure</A ></H3 ><P >Compares the two files and returns a <I CLASS="EMPHASIS" >1</I > if they match, or a <I CLASS="EMPHASIS" >0</I > if they don't. If <SPAN CLASS="SYMBOL" >verbose</SPAN > is set, then it'll print the differences to the screen.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4489" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >diff</TT ></CODE >(<TT CLASS="PARAMETER" ><I >file_1</I ></TT > <TT CLASS="PARAMETER" ><I >file_2</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >file_1</I ></TT ></DT ><DD ><P >The first file to compare.</P ></DD ><DT ><TT CLASS="PARAMETER" ><I >file_2</I ></TT ></DT ><DD ><P >The second file to compare.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="SETENV" >Setenv Procedure</A ></H3 ><P >Sets the environment variable <I CLASS="EMPHASIS" >var</I > to the value <I CLASS="EMPHASIS" >val</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4511" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >setenv</TT ></CODE >(<TT CLASS="PARAMETER" ><I >var</I ></TT > <TT CLASS="PARAMETER" ><I >val</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >var</I ></TT ></DT ><DD ><P >The environment variable to set.</P ></DD ><DT ><TT CLASS="PARAMETER" ><I >val</I ></TT ></DT ><DD ><P >The value to set the variable to.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="UNSETENV" >unsetenv Procedure</A ></H3 ><P >Unsets the environment variable <I CLASS="EMPHASIS" >var</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4532" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >unsetenv</TT ></CODE >(<TT CLASS="PARAMETER" ><I >var</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >var</I ></TT ></DT ><DD ><P >The environment variable to unset.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="GETENV" >Getenv Procedure</A ></H3 ><P >Returns the value of <I CLASS="EMPHASIS" >var</I > in the environment if it exists, otherwise it returns NULL.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4547" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >getenv</TT ></CODE >(<TT CLASS="PARAMETER" ><I >var</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >var</I ></TT ></DT ><DD ><P >The environment variable to get the value of.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="PRUNESYSTEMCRUD" >Prune_system_crud Procedure</A ></H3 ><P >For system <I CLASS="EMPHASIS" >system</I >, delete text the host or target operating system might issue that will interfere with pattern matching of program output in <I CLASS="EMPHASIS" >text</I >. An example is the message that is printed if a shared library is out of date.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4563" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >prune_system_crud</TT ></CODE >(<TT CLASS="PARAMETER" ><I >system</I ></TT > <TT CLASS="PARAMETER" ><I >test</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >system</I ></TT ></DT ><DD ><P >The system error messages to look for to screen out .</P ></DD ><DT ><TT CLASS="PARAMETER" ><I >text</I ></TT ></DT ><DD ><P >The Tcl variable containing the text.</P ></DD ></DL ></DIV ></DIV ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="LIBGLOSS" >Libgloss, A Free BSP</A ></H2 ><P >Libgloss is a free <I CLASS="FIRSTTERM" >BSP</I > (Board Support Package) commonly used with GCC and G++ to produce a fully linked executable image for an embedded systems.</P ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="LIBGLOSSLINKFLAGS" >Libgloss_link_flags Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4587" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >libgloss_link_flags</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="LIBGLOSSINCLUDEFLAGS" >Libgloss_include_flags Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4601" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >libgloss_include_flags</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="NEWLIBLINKFLAGS" >Newlib_link_flags Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4615" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >newlib_link_flags</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="NEWLIBINCLUDEFLAGS" >Newlib_include_flags Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4629" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >newlib_include_flags</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="LIBIOINCLUDEFLAGS" >Libio_include_flags Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4643" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >libio_include_flags</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="LIBIOLINKFLAGS" >Libio_link_flags Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4657" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >libio_link_flags</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="GXXINCLUDEFLAGS" >G++_include_flags Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4671" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >g++_include_flags</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="GXXLINKFLAGS" >G++_link_flags Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4685" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >g++_link_flags</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="LIBSTDCXXINCLUDEFLAGS" >Libstdc++_include_flags Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4699" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >libstdc++_include_flags</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="LIBSTDCXXLINKFLAGS" >Libstdc++_link_flags Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4713" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >libstdc++_link_flags</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="GETMULTILIBS" >Get_multilibs Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4727" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >get_multilibs</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FINDBINUTILSPROG" >Find_binutils_prog Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4741" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >find_binutils_prog</TT ></CODE >(<TT CLASS="PARAMETER" ><I >name</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >name</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FINDGCC" >Find_gcc Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4755" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >find_gcc</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FINDGCJ" >Find_gcj Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4763" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >find_gcj</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FINDGXX" >Find_g++ Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4771" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >find_g++</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FINDG77" >Find_g77 Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4779" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >find_g77</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="PROCESSMULTILIBOPTIONS" >Process_multilib_options Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4787" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >process_multilib_options</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="ADDMULTILIBOPTION" >Add_multilib_option Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4801" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >add_multilib_option</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FINDGAS" >Find_gas Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4815" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >find_gas</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="FINDLD" >Find_ld Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4823" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >find_ld</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="BUILDWRAPPER" >Build_wrapper Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4831" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >build_wrapper</TT ></CODE >(<TT CLASS="PARAMETER" ><I >gluefile</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >gluefile</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="WINSUPINCLUDEFLAGS" >Winsup_include_flags Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4845" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >winsup_include_flags</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="WINSUPLINKFLAGS" >Winsup_link_flags Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4859" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >winsup_link_flags</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="DEBUGPROCS" >Procedures for debugging your Tcl code.</A ></H2 ><P ><TT CLASS="FILENAME" >lib/debugger.exp</TT >defines these utility procedures:</P ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="DUMPVARS" >Dumpvars Procedure</A ></H3 ><P >This takes a csh style regular expression (glob rules) and prints the values of the global variable names that match. It is abbreviated as <I CLASS="EMPHASIS" >dv</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4878" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >dumpvars</TT ></CODE >(<TT CLASS="PARAMETER" ><I >vars</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >vars</I ></TT ></DT ><DD ><P >The variables to dump.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="DUMPLOCALS" >Dumplocals Procedure</A ></H3 ><P >This takes a csh style regular expression (glob rules) and prints the values of the local variable names that match. It is abbreviated as <I CLASS="EMPHASIS" >dl</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4893" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >dumplocals</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="DUMPROCS" >Dumprocs Procedure</A ></H3 ><P >This takes a csh style regular expression (glob rules) and prints the body of all procs that match. It is abbreviated as <I CLASS="EMPHASIS" >dp</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4908" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >dumprocs</TT ></CODE >(<TT CLASS="PARAMETER" ><I >pattern</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >pattern</I ></TT ></DT ><DD ><P >The csh "glob" style pattern to look for.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="DUMPWATCH" >Dumpwatch Procedure</A ></H3 ><P >This takes a csh style regular expression (glob rules) and prints all the watchpoints. It is abbreviated as <I CLASS="EMPHASIS" >dw</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4923" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >dumpwatch</TT ></CODE >(<TT CLASS="PARAMETER" ><I >pattern</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >pattern</I ></TT ></DT ><DD ><P >The csh "glob" style pattern to look for.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="WATCHARRAY" >Watcharray Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4937" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >watcharray</TT ></CODE >(<TT CLASS="PARAMETER" ><I >element</I ></TT > <TT CLASS="PARAMETER" ><I >type</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >type</I ></TT ></DT ><DD ><P >The csh "glob" style pattern to look for.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="WATCHVAR" >Watchvar Procedure</A ></H3 ><P ></P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4952" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >watchvar</TT ></CODE >(<TT CLASS="PARAMETER" ><I >var</I ></TT > <TT CLASS="PARAMETER" ><I >type</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I ></I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="WATCHUNSET" >Watchunset Procedure</A ></H3 ><P >This breaks program execution when the variable <SPAN CLASS="SYMBOL" >var</SPAN > is unset. It is abbreviated as <I CLASS="EMPHASIS" >wu</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4969" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >watchunset</TT ></CODE >(<TT CLASS="PARAMETER" ><I >arg</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="WATCHWRITE" >Watchwrite Procedure</A ></H3 ><P >This breaks program execution when the variable <SPAN CLASS="SYMBOL" >var</SPAN > is written. It is abbreviated as <I CLASS="EMPHASIS" >ww</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4985" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >watchwrite</TT ></CODE >(<TT CLASS="PARAMETER" ><I >var</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >var</I ></TT ></DT ><DD ><P >The variable to watch.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="WATCHREAD" >Watchread Procedure</A ></H3 ><P >This breaks program execution when the variable <SPAN CLASS="SYMBOL" >var</SPAN > is read. It is abbreviated as <I CLASS="EMPHASIS" >wr</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN5001" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >watchread</TT ></CODE >(<TT CLASS="PARAMETER" ><I >var</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >var</I ></TT ></DT ><DD ><P >The variable to watch.</P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="WATCHDEL" >Watchdel Procedure</A ></H3 ><P >This deletes a the watchpoint from the watch list. It is abbreviated as <I CLASS="EMPHASIS" >wd</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN5016" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >watchdel</TT ></CODE >(<TT CLASS="PARAMETER" ><I >args</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >args</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="PRINT" >Print Procedure</A ></H3 ><P >This prints the value of the variable <TT CLASS="PARAMETER" ><I >var</I ></TT >. It is abbreviated as <I CLASS="EMPHASIS" >p</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN5032" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >print</TT ></CODE >(<TT CLASS="PARAMETER" ><I >var</I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I >var</I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="QUIT" >Quit Procedure</A ></H3 ><P >This makes runtest exit. It is abbreviated as <I CLASS="EMPHASIS" >q</I >.</P ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN5047" ></A ><P ></P ><CODE CLASS="FUNCDEF" ><TT CLASS="FUNCTION" >quit</TT ></CODE >(<TT CLASS="PARAMETER" ><I ></I ></TT >);<P ></P ></DIV ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="PARAMETER" ><I ></I ></TT ></DT ><DD ><P ></P ></DD ></DL ></DIV ></DIV ></DIV ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="installation.html" ><<< Previous</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="book1.html" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="filemap.html" >Next >>></A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >Installation</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="reference.html" >Up</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >File Map</TD ></TR ></TABLE ></DIV ></BODY ></HTML >