CoB1 'applydef.htm =applyset.htm :index.htmlQWsecure/banner.htm(secure/banner.jsw@-secure/connset.htmPGnsecure/connset.jsnsecure/dissetup.htmjsecure/footer.htmV0secure/hlist.htmsecure/hlist.jsZPsecure/ltx_conf.htm secure/menu.htm>+}secure/menu.js-secure/netset.htmCsecure/netset.js!asecure/serial.htm3secure/serial.jssecure/servset.htm!secure/servset.jssecure/setuprec.dtdvsecure/setuprec.xmlLsecure/smtpset.htm_ Tsecure/smtpset.jssecure/smtptrig.htm_secure/smtptrig.js:secure/subdef.htm Asecure/unitinfo.dtdvBsecure/unitinfo.xmlE qCsecure/welcome.htm"Lsecure/welcome.js~Oosecure/images/about.gifrsecure/images/home.gif,`vsecure/images/ltrx_logo.png$secure/images/ltrx_style.cssTPsecure/images/spacer.gif"isecure/images/top_graphic_tile.gifj secure/images/xDirectLogo.png!wsecure/js/util.js4secure/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.13   Copyright © Lantronix, Inc. 2007-2021. All rights reserved.
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 Lantronix xDirect Device Server HTTP/1.0 200 Content-type: text/html
 
Network
Server
Serial Tunnel
Hostlist
Channel 1
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
  Email Settings  
Server IP Address: Server Port:
Domain Name:
Unit Name:

Recipients
Recipient 1:
Email Address:
Recipient 2:
Email Address:

HTTP/1.0 200 Content-type: application/x-javascript HTTP/1.0 200 Content-type: text/html
  Email Trigger Settings  
 
Conditions
Configurable Pins Serial Trigger
Trigger Input 1: Enable Serial Trigger Input
Trigger Input 2: Channel:
Trigger Input 3: Data Size:
Match Data: 0x   0x (in Hex)
Message Properties
Message: Priority
Min. Notification Interval: (secs) Re-notification Interval: (secs)

HTTP/1.0 200 Content-type: application/x-javascript 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 Lantronix xDirect Device Server
  Device Status  
 
Product Information
Firmware Version:
Build Date:
Device ID:
Network Settings
MAC Address:
Network Mode:
DHCP HostName:
IP Address:
Default Gateway:
DNS Server:
MTU:
Line settings
Line 1:
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/png PNG  IHDR70C tEXtSoftwareAdobe ImageReadyqe<PLTE̻Ɲnɺntzy~{R],~փi<\Դiðtzrx~ͪҶvL߾nAtzݾqv|d5`/컾lMM6N{޻;1~rΝ9w=sΙY6[Noe7Jq݋efk%6j#s(<9BmsGmm>vֹ.rs!3IH'6ϭ}r^NK}܊]}Rl3NǍ]5i6Źrwߋ nznבIZ[S->9~ \j)AG)F^+ˍĞ7wWB3]NnۍF i򽧥+W{~8JzHE8ύvF!]'j̪ ݩS[\wsp}'YIwlYƹY%ssVGyn_KZKv'ijPޮAn'A-lJobi#s/q=qv&5]&Oa+ 0[ZifѢC^!t6͙JIZan,M|ndЦ"&R^OdcԲayRұ([*XXO.>!Qn}v ӄ+PI{0h=*H]nW%J=3s>;(UQ;RɎF?uL ? ئȧǼ5dQn~ܞ/5ĭJ$)ؔVp##VAn p퀲+8ow<(SƍdE:*\P"^EO >gq r>(_2 } VKnG r pSFZ{"ō4ZԅUj`(81nt`jۂ*z}An*72)bܺ;ppW1q*5(:ql=pQ=qKQ>)ntTFݡQnnWrs]#t&Y#Xʍ3# f̗@oV՞5W^;'qo_\pAf&pKɉ agҬ j%u3nqOyc???Ko? hpWrR;4"@gg\Ysv$quhܞŬ[ˋT0guEhT),O'䇠'|ri^M7&煭sü1*zވan Ba S̍f)vn !+e+6b{]8B~oSB~]nqn'3er[ ʪ<۝yPL, *]J F/t!nsKQ,drpt[K9FѭHIju.7ԅql(7Z.sn12,nG ήjh~s pK@9>ȖޱPr6s(uTۗq& ss8?ۨʍf&FE}R0ý#jˍbg.qì,JvnFb $nܤʍ2B( FC5tDhs:=A;׆^-hV1GBƝL\Q77s|WO涗z_a`OPz-nqg{uTy+Tyjp{H}]fV|Dۅ>tAuT#k˩ʼBS[n:7:`C0iqןĸzAw/0dшapy8 !)YT0eIާܨաǭsnPއ`LpZ90m&fKdeD7]=ܨNfp?ordR+*{>AS+׳7|6vڽ6FՇtrȕLѝ]`ӷɚ<1S[ e+ C3G3 nW0p[jˍVdl!Ǎntjq.Z|p]*;WP ⷊ&7-D`qᦌ܆Y? n;6~tfՁY nQE[~)\Ƹ6`pam> 8Rgt~tʶPc:ԸmKZ̀!N\t69Sn'TA7%z9n_i&voFaupu?$#3ƭ39Sޥί%3MN YpIv*Vg|"iRWg@S]oֵRMi}Ya4iptpLm6 YlWtCz L*_&~8xZLTSz&|N [2EGc IDATxb2 @72P0O5ߡbX j ~{̠ bPv Bfx ' 2mQF .Pu Yz=p eBr4E}oa"qYiEJ]y#,D$u@%8eAA<#HzF Ě,Sт*Jg7(ۓ%-S@g!5/Z!qտKѽI1 /hL Ito @t< (rhA ae 8-f` oqBP<"Ns dSay+8 hhfhIA@m_8D~dn43aXc7F2oyXQ9Xq~ߏ7Ą5⇁^@|"j?(-VYpF]L|ij!oCi= ւb5 vC m 0h#`1?4đ9gؒ^@(aE"Ѿdzƣ°ʤآM"htY6 <⧁؄F8Ltd̆MjԠ5H|hl+Z τOUX|ҡPڙe@̍W)A/ -@e?;Ohiˆ%L"ލ%Y -4ZIھb$CD|'C-F2IXa>(]d'&ڙ@B# qM T?1+@ CdHj#Jv/baV![#I E hjHiN dKEV QC!@< Aj@ nd!]:9ǐhv(%_ sbѷİBIOhlG!pg5MQxvD " ?xDֿC@\4`=YA܎Fч4%;Y2>bR` :[LRb<ƎU>?}kT ,unH7#^ƛ#@*0w<ϔ0llnJlƛKaF*ֳRq^@HrYV^NR v0/:\o5G1v{_\ҽnaHB|RJX_Bp'Evc׼ň[ \_NZ8Lo+S.| VwѶSmRH5S aQXqzeuHzgȫb)|l-w8aV 7ab_iP yp~⌔ 7"#x 튋5v뮲Qrp$ K1٫Q&~u<Uw]j\ ޕFQZT J<(Jx`"9bԨ[G%7DfY5fUm^ʲD@P0KGߨ[?:Ku6&: )9T!/T.lۣC*=q~IAo4( jA>0Y=74C  ɧނ6qԨA,XZܩҟ&' /}1EdK|^طIkӲJgI Eʕ"o=B|+u@Mgi jZ[(Y BxǺ`D\k .N@}6|ʃf"'29I6H.̺Qq=0B;%Jmq>A $!EB9<(}~jUJ~=q$k#eGٔ7434ԍ!@kiJUakk 裏s#s>: I'X53¯7Nh~@fiTՇ%`9i^NRjcc3¯YП3 * iq\Cm&p(ͅfLi:Z3&t]P ,d[A ֝cHٓY\X"x\VHp^G:̆g< BbybMߢV¥7|* s B54mVPYo.Y!bV6lfƆ :Jlxݠ Cn#ฐšN (D4P r9~0EQhw!3w03I>AĠ sK\%{ ]~a_DhYn&N. Գ0 e"'k9E%m#絣к5diD7X2k\J0%YZ$ ѾLkQk`)6zbnv͗r|j&P !3&5Q_H P(ZH{ruE p'*`/}JI5,*ZLjͺi'.ڞL &1lu>AjģN{]ł g=DAη9׆Hi *T7Vb;>i$~5xʥ)U0FDTHG1[_^{`m}Jqgw&`8-Yb߫+$g}6"u"Ҡa\yI|psyip&@Ý# )ZIIfqĀyt.?d HG `WB"]C{crN F ˊsp}Ł&ge EaMbwƑ-}:&P=*q@U/:E 9!s԰Vz`yJmmgt yidN2[웩#D@b ,+p&d{EU> 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