CoB1 Rapplydef.htm happlyset.htm :Hindex.htmlsecure/banner.htmM secure/banner.js;'secure/connset.htmCcsecure/connset.jsngsecure/dissetup.htmG.ժsecure/gpio.htmsecure/gpio.jswsecure/hlist.htm}secure/hlist.jso!secure/ltx_conf.htm@$secure/menu.htm#R9secure/menu.js>]secure/netset.htm qsecure/netset.js>"ˌsecure/serial.htmy/ secure/serial.jssecure/servset.htmL!secure/servset.jsmsecure/setuprec.dtdv0secure/setuprec.xmlmsecure/smtpset.htm[ secure/smtpset.jsDnsecure/smtptrig.htm6secure/smtptrig.jsJJQsecure/subdef.htmWsecure/unitinfo.dtdvXsecure/unitinfo.xmlXsecure/welcome.htm./^secure/wifiset.htmXύsecure/wifiset.js~secure/images/about.gifRsecure/images/home.gifbsecure/images/ltrx_logo.gif!Gsecure/images/ltrx_style.cssTsecure/images/spacer.gif"isecure/images/top_graphic_tile.gif7secure/images/WiPortLogo.jpg RNsecure/js/util.js )osecure/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
  Configurable Pin Settings  
CP Function Direction Trigger Input Active Level
0 Input Output Low High
1 Input Output Low High
2 Input Output Low High
3 Input Output Low High
4 Input Output Low High
5 Input Output Low High
6 Input Output Low High
7 Input Output Low High
8 Input Output Low High
9 Input Output Low High
10 Input Output Low High

HTTP/1.0 200 Content-type: application/x-javascript 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 WiPort Device Server HTTP/1.0 200 Content-type: text/html
 
Network
Server
Serial Tunnel
Hostlist
Channel 1
Serial Settings
Connection
Channel 2
Serial Settings
Connection
Email
Trigger 1
Trigger 2
Trigger 3
WLAN
Configurable Pins
Apply Settings
Apply Defaults
HTTP/1.0 200 Content-type: application/x-javascript HTTP/1.0 200 Content-type: text/html
  Network Settings  
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:

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 Only: 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
Telnet 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:
MTU Size:

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 WiPort Device Server
  Home  
 
Device Server Configuration Manager
Version 1.4.0.0
HTTP/1.0 200 Content-type: text/html
  WLAN Settings  
Network Interface:
Wireless Network Configuration
Network Name (SSID):
Network Type: Infrastructure
Ad Hoc
Channel:

Wireless Network Security
Security:
Advanced Settings
Data Rate: Auto
Radio Power Management: Enable Disable

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 } 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/jpeg JFIF,,C     C   " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ?S((((MSk-ϕn[npquDqsV\ %Ϝ|[~0Zi-ٴ2W&|LМvIm&}dy 4~:Blgog)CNz &֝^,"@,idu'qf_Leǖ.TQMgٮ:Q5uI6i=S৅n!Ncu6n IžDj,/]WX<40Xzxj K~oOZu缛xQEy?/GV.gh q8n޽*}v|T< 2t t#UﰮVefy4vdpR8CcPRҚZÙ/bϦO0YFYXw?%MdZ)xf9ʠcۊ(ag^S)ZwwWvzNyo,L~#N\VVvWZm^_>9!Pn\ E{.zs Ww_8kxno%Α2yXN>S?QJ:܇Sӝ_^/;~=|; )|z5p+((((((((((((((((*}Ս~mO + dҭQS('+4Ziٟ3zտ|{[T.e ƞu# `( ǀ>0h-Y;*v<Nj $@SA8㏁?ac]j$ s.0T'T65xV?ޏvO v@rAadʹvOUvsЧH]Gd˻WFlAj:u]\.CPA  Wy;/^I%'YHŒ( 䞞DʴBXͥt}m|b#J5d6wfvdxTB𾱩[j_uc|:͖n1PF ֳdes~ ᳔`(\ɜR>U Va ;O֛L,&yɑ7/;6x9##[r/j%8|)ڽmU׈:Xl?+=贾;k.w{YfyyI)lŸx=> jO13K3X⵫?*xy;jߛf dZ/E_QE{'QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE><6|V|GSԼssK>/N(gh|Aӫgy2#(]ѶVO=̛.gTc.[+ɭ}#_ڟ7?vssvvu_b|}<=ݔf>(VV`tqm7><|\jЯnl Y68 zW_mjp،$~FTnU pk;Ot[X[hc;Q@ 2y8u,Z$}Z>qNeƕ<<[w]/Z+ࢊ((((((((((((((((((((((;vᥜp$?l.gppSc +_ڟG_iٟ9\CCe|_:oE}w7 8];ۡ&Tɨ'֑g5ooDe`x"ӵ }[O͵fLGZ|i>Ьn򮭬 XzWpiʭ?Micn6Ҥ~Et4Q@Q@Q@Q@1պxEJofn;HX`w5韴^qy[Si7i@؆5r89Ҽο3&w?2*^,R~ʶ'IH'}IyB̫eA=H^iְֺɍ\F$FeO\o>LSnch`GǞk|Mi>=9hUU|AB%l82~VnVvgXSsJRv{7Z|&n Ɵ$YNr {:A]}|k7-:/m|S'Pdx xè~D|K/r%pkf|)РrEkk~~Eg]|PjΧ5wZ?j(wW_%NT:jH|Hm☯`(+?V4zm; ]F1be@# 0<}hQ@gO~-?gM Siш 67F>V v '^ootmIc[W SnFVЫ ~W_ƝoL]O&I܈PA#!V3~ѥ.ϥn*)rAe'=s|^&joLU bqO޶~7->|y7@uf%nw\6WFˌq4:+O~>!h{ ]\e`%IpF 1ڇj\}Q$[{1TtOԚVO1e_,ӭ_*t7ŋ](*YN184r1߄?j.%ĚW7p ]-1BHf?/tJXY3{y88ay~-Xwn(0*?=n8%%“*!{.v~&I6&}_E|osTռQkm;G)+\,N rK(*/ڊ{%ZZ]Nt$6@p H#%OE{$h 9T{gV#U${wet.$ 6N>E82hqq];Qūj(wWVؗ$Q&sᶋ6Z5\]#8b?Z]@Mj[e&}_E| _ho;E.Vj*)-EϷ6蠍dBHs5}Ei u9|4 dX#}}kr>7sxqOܸBM~O>5?cIsbmیq'yϻqu{XyGr"9x?+nS7_sv,~u}kVJJ¨:͗GQKK+u$xQI8I j|N|CY6R12Ϩp (0F+He)⥺+~I^U3oE2=njQW+KKa P8KP5<۫^ys %`nEz/w7IhVeLrC|z27xa_ x/ö\Z"ڊ r| NI;BXV]\fxm/=T=MH8t9ڼ6`.)s Mv~'? X˓q!?FA5?k:M2z:y +q~xCgt(5m&6Ox8#H W>)KnvŽn s9IJjƉHnQ|]_hGw҈lL (S-Y%qpzYeh;W 䕦Ig3oj+oS%r9c`X:I /ɡIeDfi(_ 7A;<sWE%cڿJ.`t?];QŪE}>|,<{}imPxOKG ubs^ 9q)s$>.x@Q·΃mW_LD Ӯ, ) { |1_iNucwuk+,{mu$088 üCL5~Knk_;pEkӯGO[FuXg`2lY7FP _eW~ -7ryVM&QdRd{VVޗ~gƴqt9x.[HN?8 pq_Zƭ_]]JK&л,pI=+?h>lvD*<S8ȫ9}^:WK]_.>a=Et_ؖ[ˈ'yXGQ)fv'9$`Tq7V7qWV2Ǹ6RC J٧(^uzd#Te c5Qx#:-b랓*gE#`y|GK&y-]1[Kl ~|DHxsi{ 3So+&yRx|}]?-FVc/5ňp+ OwfݩIzt' fX)F+ߎkO[mLJЮ'[bҲ2sg:+xT PIeu# 8 G5YuwHa6%J r=wJ;_q!SɜS|%E4RaI쟥KH.."E 1#%\s͕ߥE,6v{%F1ax%ܚρ{\3Hq][n$_ۿ_eWƿ{:I|# Qsm'yGQ)fv':s_Pi߲obo}Rg|8cnxr8wD`L&IH8r[oʿ.qqI)'$%LUoI$ QxoE?Q@dٔH)z?֕Z{ZΧn^sp!a#Z^ W'/Lx :J N |ۇWۿ<=>Goe#]n!J{8섎(M(GG}3^7\GE̐9r >ԴQʺ=0<?j + f%EMRܬf,Ņ,A DUUN600#3ӝ?tj$u_ ToHnQ|]_hGw҈!-׷[3%,RxkxZ~tKS;80Gnb͌g>Tmd]B $l$sϢ8q߁_vT"QEAg];Qūj(wWV}_':+'[OuVO {Md-lQE!|AsJFH&dg{׸ #lQ}oSH=ǛhZsn<Yq5iKʼj/M~*mI%ͯ,8<¾* ;oemï 1$(tw+ 4jxI$_}ƭG]Jໝ 2NIk }V޾V_z>S% {-l+_JnO}_?WuwxEtfx# Q?6'h܌ar2 _ x%z LL32mŒE=NAg׭!}عg' 2u`~M~߬zn yr+E~uu~EtK\6|P܊~JbVu{)n# F `t+t}k_<C峪ܒ_8η>>ي5U%w^'+_0OJuW$A(5g$ZDҧ{TOkI_%NT:jP GM_QZ[-_WN a+?I֣aY?L5rؘ{MQYQ@|Q.]/Ű!#ꈱ$G2(\t2I*O>Ѯp\ô/*`f4σ+|U]:]ݣjr&k'A/$(^@sƒimgFsj6i{l%AʟAg"\>US,uA66H\j˴8~lE?Uy?j-J1r2J !N xfH|4Кۉ2hؒwdnnԐږqj7WryWRI.c8IZ>/~v}[VιTQDAG8?h#DUu}CJ"`~X4xyk*x_iTq`* >P GM^-^WEӿZos?I֣aY?L55߲G²kk'k`) +Hd9;3޸7E$:nic 9Q3(?e Zo7S^/b6Sy9۞ !Gi)k,V~.N*\qkf_D+_-?Jdk>xG_hkw|~^3ܜcv:2ʱ󭌥xy7ٞ8 XZROfT|WEӿ&+wO&myûg;;WQvg j?D\2MM >°Η]5כyX"sRiRh̰((."oMmxGuT$z9 Oڋj3Ke۸F=r 2;5az',[`~8!q\Jĵs:+ɓ dgЩUæ>'/ ^xwz-Muk{۳2`FV܋XĢ_ozqm/#,bUVfU OZu^ΩQiO_4Fr0͐Fy 1项_)8ۖݕ>X832xkh᷷ qTP0˱It]ú]%l ?$IIkB+28W/}CCa~_Gl"vzdkH \KoO-}^)r$?n'//v>q^S'v4QEIG];QūgxTmV';scq?67֪I"gG':+'XxzK> 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); } --> HTTP/1.0 200 Content-type: application/x-javascript HTTP/1.0 200 Content-type: application/x-javascript