CoB1 applydef.htm applyset.htm :index.htmlrsecure/banner.htmesecure/banner.jsw@',secure/connset.htmPlsecure/connset.jsnOsecure/dissetup.htm'secure/footer.htmVsecure/hlist.htm:secure/hlist.js#secure/ltx_conf.htm$'secure/menu.htm+Ksecure/menu.js-secure/netset.htmCsecure/netset.js!asecure/serial.htm3secure/serial.jsVsecure/servset.htm!secure/servset.js secure/setuprec.dtdvsecure/setuprec.xmlCsecure/subdef.htmasecure/unitinfo.dtdv<secure/unitinfo.xml secure/welcome.htm8,secure/welcome.js~+secure/images/about.gifq/secure/images/home.gifb3secure/images/ltrx_logo.gif$f:secure/images/ltrx_style.cssT*_secure/images/spacer.gif"i~_secure/images/top_graphic_tile.gif _secure/images/UDS2100Logo.png!isecure/js/util.jsSsecure/js/validate.js secure/js/validatenetwork.jsHTTP/1.0 200 Content-type: text/html



The unit will reboot in order for the factory defaults to be applied.
Please point the browser to the correct IP address and HTTP Port number
of the unit in order to continue using the web based configuration manager.

HTTP/1.0 200 Content-type: text/html



Please wait while the configuration is saved...
The unit will reboot in order for the settings to be applied.

 
                                   
 

HTTP/1.0 200 Content-type: text/html HTTP/1.0 200 Content-type: text/html
 
HTTP/1.0 200 Content-type: application/x-javascript HTTP/1.0 200 Content-type: text/html
  Connection Settings  
Connect Protocol
Protocol:
HTTP/1.0 200 Content-type: application/x-javascript HTTP/1.0 200 Content-type: text/html



Error retrieving configuration records from the unit.
Web Based configuration seems to be disabled on the unit.

Please enable WebSetup in the Security options via the
serial or telnet based setup and reload the Configuration
Manager to continue with web based setup.

HTTP/1.0 200 Content-type: text/html
  WebManager Version: 2.0.0.7  
HTTP/1.0 200 Content-type: text/html
  Hostlist Settings  
Retry Settings
Retry Counter: Retry Timeout:
Host Information
No. Host Address Port No. Host Address Port
1 2
3 4
5 6
7 8
9 10
11 12

HTTP/1.0 200 Content-type: application/x-javascript HTTP/1.0 200 Content-type: text/html HTTP/1.0 200 Content-type: text/html
 
Network
Server
Serial Tunnel
Hostlist
Channel 1
Serial Settings
Connection
Channel 2
Serial Settings
Connection
Apply Settings
Apply Defaults
HTTP/1.0 200 Content-type: application/x-javascript HTTP/1.0 200 Content-type: text/html
  Network Settings  
Network Mode:
IP Configuration
Obtain IP address automatically
Auto Configuration Methods
BOOTP: Enable Disable
DHCP: Enable Disable
AutoIP: Enable Disable
DHCP Host Name:
Use the following IP configuration:
IP Address:
Subnet Mask:
Default Gateway:
DNS Server:

Ethernet Configuration
Auto Negotiate
Speed: 100 Mbps 10 Mbps
Duplex: Full Half

HTTP/1.0 200 Content-type: application/x-javascript HTTP/1.0 200 Content-type: text/html
  Serial Settings  
Disable Serial Port
Port Settings
Protocol: Flow Control:
Baud Rate: Data Bits: Parity: Stop Bits:

Pack Control
Enable Packing
Idle Gap Time:
Match 2 Byte Sequence: Yes No Send Frame Immediate: Yes No
Match Bytes: 0x   0x (Hex) Send Trailing Bytes: None One Two

Flush Mode
Flush Input Buffer Flush Output Buffer
With Active Connect: Yes No With Active Connect: Yes No
With Passive Connect: Yes No With Passive Connect: Yes No
At Time of Disconnect: Yes No At Time of Disconnect: Yes No

HTTP/1.0 200 Content-type: application/x-javascript HTTP/1.0 200 Content-type: text/html
  Server Settings  
Server Configuration
Enhanced Password: Enable Disable
Telnet/Web Manager Password:
Retype Password:
Advanced
ARP Cache Timeout (secs):
TCP Keepalive (secs):
Monitor Mode @ Bootup: Enable Disable
CPU Performance Mode: Low Regular High
HTTP Server Port:
Config Server Port:
MTU Size:
TCP Re-transmission timeout (ms):

HTTP/1.0 200 Content-type: application/x-javascript HTTP/1.0 200 Content-type: application/xml-dtd HTTP/1.0 200 Content-type: text/xml HTTP/1.0 200 Content-type: text/html



Are you sure you want to Apply Factory Defaults?


HTTP/1.0 200 Content-type: application/xml-dtd HTTP/1.0 200 Content-type: text/xml HTTP/1.0 200 Content-type: text/html
  Device Status  
 
Product Information
Firmware Version:
Build Date:
Network Settings
MAC Address:
Network Mode:
DHCP HostName:
IP Address:
Default Gateway:
DNS Server:
MTU:
Line settings
Line 1:
Line 2:
HTTP/1.0 200 Content-type: application/x-javascript HTTP/1.0 200 Content-type: image/gif GIF89a,:H*\0a aʼn>$Q"ƌ/dISrD9R˗0S;HTTP/1.0 200 Content-type: image/gif GIF89a,OH*\pa >|`C)bDHqƄ%,8R$7 J[ ̚m*y#˟ :0 ;HTTP/1.0 200 Content-type: image/gif GIF89aC卑ԫg3¢pޛ!,C0 js^_)䩦,o r4n^',äQ\:P9RlujK4z}nZv.q:k Y{qD@s IɃoM5bňyMȋLCir`Hypk y}%1 ̃ kطx}`_ `ҴhBy>WBO?!B4mN-@gbgqmH's  vedwf9H# !!X*yTX5ARL-n9MPU0N#,`WuFmHtn+ cOc"-6SA֖0W6~EaO QL1iVa̙bvsU 5%0ygbg(@?!NUa&|KACl8KoȠgХ <'F!ͩB38kLivs ʃ3A5ֹ`8 K Aya&P[V> O1 iXQbl%2x)"/Q(M@xtQpXZ0bv& $i!f((vX@l:xWaH&\FA2F`2ӗXvˊ" aÀ`{#vṆ> 0Rƒ( Q >L(gGu`@:_r-:39@/T j2KЯ)nm@kBLj\W قR5|A&C"$AISwq?ЀĘii!U"fI`BAժZժ!A0fQU6 䱍#R% BU50(H@ `d1AXEa:Vmld+Rͬe5zh?;В HjWֺlgKͭnw;A { COLOR: #542d81 } TD.pagelink { COLOR: #542d81; FONT-WEIGHT: bold; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } A.pagelink { COLOR: #542d81; FONT-WEIGHT: bold; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } A.pagelinkdisabled { COLOR: #cccccc; FONT-WEIGHT: bold; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } A.pagelink:hover { COLOR: #ff6600; FONT-WEIGHT: bold; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } TD.datalink { COLOR: #542d81; FONT-WEIGHT: bold; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } A.datalink { COLOR: #542d81; FONT-WEIGHT: bold; TEXT-DECORATION: none } A.datalink:hover { COLOR: #ff6600; FONT-WEIGHT: bold; TEXT-DECORATION: none } TD.topnavcenter { BACKGROUND-COLOR: #542d81; COLOR: #ffffff; PADDING-TOP: 1px; PADDING-BOTTOM: 1px; TEXT-ALIGN: center; FONT-WEIGHT: bold; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } TD.topnav { BACKGROUND-COLOR: #542d81; COLOR: #ffffff; PADDING-LEFT: 10px; PADDING-TOP: 1px; PADDING-BOTTOM: 1px; TEXT-ALIGN: left; FONT-WEIGHT: bold; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } A.topnav { COLOR: #ffffff; TEXT-DECORATION: none } A.topnav:hover { COLOR: #cc6600; TEXT-DECORATION: none } A.topnavcurr { COLOR: #ffff00; TEXT-DECORATION: none } TD.botnav { BACKGROUND-COLOR: #542d81; COLOR: #ffffff; PADDING-LEFT: 20px; PADDING-TOP: 1px; PADDING-BOTTOM: 1px; TEXT-ALIGN: left; FONT-WEIGHT: normal; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } A.botnav { COLOR: #ffffff; TEXT-DECORATION: none } A.botnav:hover { COLOR: #cc6600; TEXT-DECORATION: none } .color1back { BACKGROUND-COLOR: #ff6600 } .color2back { BACKGROUND-COLOR: #999999 } TD.product { COLOR: #ff6702; TEXT-ALIGN: right; FONT-WEIGHT: bold; FONT-SIZE: 20px; FONT-STYLE: italic; FONT-FAMILY: Arial, Helvetica, sans-serif } TD.backpanel { TEXT-ALIGN: center; FONT-SIZE: 10px; FONT-FAMILY: Arial, Helvetica, sans-serif } TD.banner { TEXT-ALIGN: right; FONT-SIZE: 10px; FONT-FAMILY: Arial, Helvetica, sans-serif } .report { COLOR: #000000; TEXT-ALIGN: left; VERTICAL-ALIGN: top; FONT-SIZE: 12px; FONT-FAMILY: Courier, Courier New, monospace } .datalabel { COLOR: #000000; TEXT-ALIGN: right; VERTICAL-ALIGN: middle; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } .datalabeltop { COLOR: #000000; TEXT-ALIGN: right; VERTICAL-ALIGN: top; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } .datalabellefttop { COLOR: #000000; TEXT-ALIGN: left; VERTICAL-ALIGN: top; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } .datalabelleft { COLOR: #000000; TEXT-ALIGN: left; VERTICAL-ALIGN: middle; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } .datalabelright { COLOR: #000000; TEXT-ALIGN: right; VERTICAL-ALIGN: middle; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } .datalabelcenter { COLOR: #000000; TEXT-ALIGN: center; VERTICAL-ALIGN: middle; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } .datalabellarge { COLOR: #000000; TEXT-ALIGN: center; VERTICAL-ALIGN: middle; FONT-SIZE: 14px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } .datalabelleftlarge { COLOR: #000000; TEXT-ALIGN: left; VERTICAL-ALIGN: middle; FONT-SIZE: 14px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } .dataverbage { COLOR: #000000; TEXT-ALIGN: left; VERTICAL-ALIGN: middle; FONT-SIZE: 11px; FONT-FAMILY: Arial, Helvetica, sans-serif } .datavalue { COLOR: #000000; TEXT-ALIGN: left; VERTICAL-ALIGN: middle; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } .datavaluetop { COLOR: #000000; TEXT-ALIGN: left; VERTICAL-ALIGN: top; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } .datavaluecenter { COLOR: #000000; TEXT-ALIGN: center; VERTICAL-ALIGN: middle; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } .datavalueright { COLOR: #000000; TEXT-ALIGN: right; VERTICAL-ALIGN: middle; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } .datavalro { COLOR: #000000; TEXT-ALIGN: left; VERTICAL-ALIGN: middle; FONT-SIZE: 12px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } .datavalrotop { COLOR: #000000; TEXT-ALIGN: left; VERTICAL-ALIGN: top; FONT-SIZE: 12px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } .hometitle { COLOR: #000000; TEXT-ALIGN: center; PADDING-TOP: 30px; FONT-SIZE: 20px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } .datatitle { COLOR: #000000; TEXT-ALIGN: center; PADDING-TOP: 2px; FONT-SIZE: 16px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } .datatitlehelp { COLOR: #000000; TEXT-ALIGN: right; VERTICAL-ALIGN: middle; FONT-SIZE: 16px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } A.datatitlehelp:hover { COLOR: #000000; TEXT-DECORATION: none } A.datatitlehelp { COLOR: #000000; TEXT-DECORATION: none } .databutton { COLOR: #000000; TEXT-ALIGN: center; FONT-SIZE: 12px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } .tabletitle { COLOR: #000000; TEXT-ALIGN: center; FONT-SIZE: 12px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } .tabletitleleft { COLOR: #000000; TEXT-ALIGN: left; FONT-SIZE: 12px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } .tableback { BORDER: 1px solid black; BACKGROUND-COLOR: #cccccc } .tableheader { PADDING: 2px; BACKGROUND-COLOR: white; FONT-SIZE: 12px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } .tablefield { PADDING: 2px; BACKGROUND-COLOR: white; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } .tablefieldcenter { PADDING: 2px; BACKGROUND-COLOR: white; TEXT-ALIGN: center; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, sans-serif } .tableblank { PADDING: 2px; BACKGROUND-COLOR: #cccccc } .tablelight { BORDER: 1px solid black; BACKGROUND-COLOR: #e6e6e6 } .smbutton { PADDING: 0px; } .regbutton { FONT-SIZE: 12px; FONT-WEIGHT: normal; } TD.line { BORDER-TOP: 1px solid black; } .roinput { BORDER: 0px } .bpback { BORDER: 2px solid black; BACKGROUND-COLOR: #000000 } TD.bpeth { COLOR: #ffffff; BACKGROUND-COLOR: #0000ff; WIDTH: 16px; HEIGHT: 16px; TEXT-ALIGN: center; VERTICAL-ALIGN: middle; FONT-SIZE: 10px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } TD.bpdev { COLOR: #ffffff; BACKGROUND-COLOR: #008000; WIDTH: 16px; HEIGHT: 16px; TEXT-ALIGN: center; VERTICAL-ALIGN: middle; FONT-SIZE: 12px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } TD.bpdevon { COLOR: #ffffff; BACKGROUND-COLOR: #542d81; WIDTH: 16px; HEIGHT: 16px; TEXT-ALIGN: center; VERTICAL-ALIGN: middle; FONT-SIZE: 12px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } TD.bppower { COLOR: #ffffff; BACKGROUND-COLOR: #999999; WIDTH: 16px; HEIGHT: 16px; TEXT-ALIGN: center; VERTICAL-ALIGN: middle; FONT-SIZE: 10px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } TD.bpblank { BACKGROUND-COLOR: #000000; WIDTH: 2px; HEIGHT: 17px } A.bp { COLOR: #ffffff; TEXT-DECORATION: none } A.bpcurr { COLOR: #ffff00; TEXT-DECORATION: none } A.bp:hover { COLOR: #cc6600; FONT-SIZE: 10px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } A.about { COLOR: white; FONT-SIZE: 12px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif; TEXT-DECORATION: none } A.status { COLOR: white; FONT-SIZE: 12px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif; TEXT-DECORATION: none } .devicetitle { COLOR: #000000; TEXT-ALIGN: center; PADDING-TOP: 8px; FONT-SIZE: 14px; FONT-WEIGHT: bold; FONT-FAMILY: Arial, Helvetica, sans-serif } .statusHeader { background-color: #bbb; color: #000; font-weight: bold; font-family: arial, helvetica, sans-serif; font-size: 10pt; } .basicTable { width: 600; font-family: Arial,Helvetica,sans-serif; font-size: 12px; font-weight: normal; text-align: left; padding: 2px 5px; margin-left:5px; margin-right: auto; margin-top: auto; margin-bottom: auto; border:3px solid #bbb; border-collapse:collapse; } .basicTable td { padding: 2px 5px; color: #000; border:2px solid #bbb; } .footerContainer { font-size: 11px; font-family: Arial,Helvetica,sans-serif; FONT-WEIGHT: normal; }HTTP/1.0 200 Content-type: image/gif GIF89a!,D;HTTP/1.0 200 Content-type: image/gif GIF89aC!,Cbx [|;xr7Y;HTTP/1.0 200 Content-type: image/png PNG  IHDR0}ktEXtSoftwareAdobe ImageReadyqe<riTXtXML:com.adobe.xmp rcPLTEY"ΫYȖc0u㝥ڤxLn>˺gn!tRNS!IDATx& [K B8moO$>$$!a q~1K"Zyi*g LǙ~~oN.;\!\I6( `׸RhfOyex/E),ӽ!|X@6$F1Ȕ8K$E"rr)UG' 17@s}HHN e^?~W᪗;E,?|s) _  }a/32~u^h#R.J+ܼU1X ^>sh[3;[*wWc!?Ř:I;eSK$hVs3`pe xUǏ`Rן+ ?z#h3ǏxxA ylZ4u2 B$HYrCrL6oj`Ƒd7$( ۏ IOR_Ȃ1(e‚e"W F+Ohhl4cv”R] 8 궠՝c2Ppvbi~hUGUq /OM8 }-af?#vh#0rz\Bc Z"MS'_`p s)j `iz[1bcws*ħ' 8x7nd\ܨM J\r(9DŇ~٦a P9ըTtp*>YsnCgQs'$7*٦]ՇFUy7nߏ=}c{PE'Rk<]vN'=N,6#IrYǓTF> 2; enc2 = ((chr1 & 3) << 4) | (chr2 >> 4); enc3 = ((chr2 & 15) << 2) | (chr3 >> 6); enc4 = chr3 & 63; if (isNaN(chr2)) { enc3 = enc4 = 64; } else if (isNaN(chr3)) { enc4 = 64; } //Lets spit out the 4 encoded bytes out = out + keyStr.charAt(enc1) + keyStr.charAt(enc2) + keyStr.charAt(enc3) + keyStr.charAt(enc4); // OK, now clean out the variables used. chr1 = chr2 = chr3 = ""; enc1 = enc2 = enc3 = enc4 = ""; } while (i < inp.length); //And finish off the loop //Now return the encoded values. return out; } //Heres the decode function function decode64(inp) { var out = ""; //This is the output var chr1, chr2, chr3 = 0; //These are the 3 decoded bytes var enc1, enc2, enc3, enc4 = 0; //These are the 4 bytes to be decoded var i = 0; //Position counter // remove all characters that are not A-Z, a-z, 0-9, +, /, or = var base64test = /[^A-Za-z0-9\+\/\=]/g; if (base64test.exec(inp)) { //Do some error checking alert("There were invalid base64 characters in the input text.\n" + "Valid base64 characters are A-Z, a-z, 0-9, +, /, and =\n" + "Expect errors in decoding."); } inp = inp.replace(/[^A-Za-z0-9\+\/\=]/g, ""); do { //Here's the decode loop. //Grab 4 bytes of encoded content. enc1 = keyStr.indexOf(inp.charAt(i++)); enc2 = keyStr.indexOf(inp.charAt(i++)); enc3 = keyStr.indexOf(inp.charAt(i++)); enc4 = keyStr.indexOf(inp.charAt(i++)); //Heres the decode part. There's really only one way to do it. chr1 = (enc1 << 2) | (enc2 >> 4); chr2 = ((enc2 & 15) << 4) | (enc3 >> 2); chr3 = ((enc3 & 3) << 6) | enc4; //Start to output decoded content out = out + String.fromCharCode(chr1); if (enc3 != 64) { out = out + String.fromCharCode(chr2); } if (enc4 != 64) { out = out + String.fromCharCode(chr3); } //now clean out the variables used chr1 = chr2 = chr3 = 0; enc1 = enc2 = enc3 = enc4 = 0; } while (i < inp.length); //finish off the loop //Now return the decoded values. return out; } function isBitSet(arr, val) { var bnum = val >> 8; var bit = val & 0xff; return (arr[bnum] & bit); } function popOptions(selObj, numOpts, optvalStr, selected) { var i; for (i = selObj.options.length; i >= 0; i--) selObj.options[i] = null; for (i = 0; i < numOpts; i++) { selObj.options[i] = new Option(optvalStr[i*2]); selObj.options[i].value = optvalStr[i*2+1]; if (selected == i) selObj.options[i].selected = true; } } function hexcode(x) { var result = ""; result = result + "0123456789ABCDEF".charAt((x/16)&0x0f); result = result + "0123456789ABCDEF".charAt((x/1)&0x0f); return result; } function getNetMask(val) { var counter = 0; var sub = new Array(0,0,0,0); var i, bytenum; if (val == 0) // default - auto mask handling. return sub; for (bytenum = 3; bytenum >= 0; bytenum--) { for (i = 0; i < 8; i++) { if(val <= counter) sub[bytenum] += (1 << i); counter++; } } return sub; } // function to obtain the netmask integer from the ip address // formatted netmask string. function StrToNetMask(nmaskStr) { var retval = 0; var i, j; var ipArray = nmaskStr.split("."); if ((nmaskStr == "") || (nmaskStr == "0.0.0.0")) return retval; for (i = 0; i < ipArray.length; i++) { if (ipArray[i] == 255){ retval += 8; continue; } for (j = 0; j < 8; j++) { if (ipArray[i] & (0x80 >> j)) retval += 1; else break; } } return (32 - retval); } // takes the address string (already validated) and returns // the iparray function StrToIPAddr(addrStr) { var i; var retArr = new Array(4); var ipArray = addrStr.split("."); for (i = 0; i < ipArray.length; i++){ retArr[i] = parseInt(ipArray[i],10); } return retArr; } // takes an array and offset into the array from which the ip // addr is read and returns a string representation of the addr. function IPAddrToStr(arr, off) { var result = ""; var i; for (i = off; i < off + 4; i++) { result = result + arr[i]; if (i < (off + 3)) result = result + "."; } return result; } // takes a string and converts it into an array of byte values // of the specified length filling up the remaining space with 0 function StrToArr(str, arrlen) { var result = new Array(arrlen); var i; if (str.length <= arrlen) { for (i = 0; i < str.length; i++) result[i] = str.charCodeAt(i); for (i = str.length; i < arrlen; i++) result[i] = 0; } else for (i = 0; i < arrlen; i++) result[i] = str.charCodeAt(i); return result; } // takes an array and offset into the array from which a string of // 'length' characters will be created and returned. function ArrToStr(arr, off, length) { var i, retval = ""; for (i = off; i < off + length; i++) { //to terminate strings if( arr[i] == 0)break; retval = retval + String.fromCharCode(arr[i]); } return retval; } // takes a hex string and converts it into an array of byte values // of the specified length filling up the remaining space with 0 function HexStrToArr(str, arrlen) { var result = new Array(arrlen); var i, j; for (i = 0, j = 0; i < str.length; i+= 2, j++) result[j] = (parseInt(str.substr(i, 2), 16)); for (i = str.length; i < arrlen; i++) result[i] = 0; return result; } // takes an array and offset into the array from which a string of // 'length' characters will be returned as a hex char string. function ArrToHexStr(arr, off, length) { var i, retval = ""; for (i = off; i < off + length; i++) retval = retval + hexcode(arr[i]); return retval; } // function that updates elements in one array from another array // if howMany = 0, then no old elements are removed, only new // elements are added. function UpdateArr(oldarr, off, howMany, newarr) { var i; var result = oldarr.splice(off, howMany); for (i = off; i < (off + newarr.length); i++) oldarr.splice(i, 0, newarr[i - off]); return result; } // function for handling the div based visibility of sections of html function getStyleObject(objectId) { // checkW3C DOM, then MSIE 4, then NN 4. if(document.getElementById && document.getElementById(objectId)) { return document.getElementById(objectId).style; } else if (document.all && document.all(objectId)) { return document.all(objectId).style; } else if (document.layers && document.layers[objectId]) { return document.layers[objectId]; } else { return false; } } function changeObjectVisibility(objectId, newVisibility) { // first get the object's stylesheet var styleObject = getStyleObject(objectId); // then if we find a stylesheet, set its visibility // as requested if (styleObject) { styleObject.visibility = newVisibility; return true; } else { return false; } } function clearDone() { changeObjectVisibility("statmesg", "hidden"); } function reportDone() { changeObjectVisibility("statmesg", "visible"); window.setTimeout("clearDone()", 5000); } function uclearDone() { changeObjectVisibility("ustatmesg", "hidden"); } function ureportDone() { changeObjectVisibility("ustatmesg", "visible"); window.setTimeout("uclearDone()", 5000); } --> HTTP/1.0 200 Content-type: application/x-javascript HTTP/1.0 200 Content-type: application/x-javascript