mirror of
https://github.com/zeek/zeek.git
synced 2025-10-16 05:28:20 +00:00
Merge branch 'topic/robin/record-table-default' into topic/robin/logging-internals
Includes additional fixes for the &default attribute's type checking.
This commit is contained in:
commit
c132506203
146 changed files with 14037 additions and 7258 deletions
33
testing/btest/Baseline/istate.base/events
Normal file
33
testing/btest/Baseline/istate.base/events
Normal file
|
@ -0,0 +1,33 @@
|
|||
Event [1301452424.097552] connection_pending([id=[orig_h=141.42.64.125, orig_p=56729/tcp, resp_h=125.190.109.199, resp_p=12345/tcp], orig=[size=0, state=1], resp=[size=0, state=6], start_time=1301452418.93139, duration=0.182432889938354, service={}, addl="", hot=0, history="Sr"])
|
||||
Event [1301452424.097552] connection_state_remove([id=[orig_h=141.42.64.125, orig_p=56729/tcp, resp_h=125.190.109.199, resp_p=12345/tcp], orig=[size=0, state=1], resp=[size=0, state=6], start_time=1301452418.93139, duration=0.182432889938354, service={}, addl="", hot=0, history="Sr"])
|
||||
Event [1301452424.099251] new_connection([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=0, state=1], resp=[size=0, state=0], start_time=1301452424.0315, duration=0.0, service={}, addl="cc=1", hot=0, history=""])
|
||||
Event [1301452424.280556] connection_established([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=0, state=4], resp=[size=0, state=4], start_time=1301452424.0315, duration=0.182510137557983, service={}, addl="", hot=0, history="Sh"])
|
||||
Event [1301452424.280556] protocol_confirmation([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301452424.0315, duration=0.183290958404541, service={}, addl="", hot=0, history="ShAD"]165)
|
||||
Event [1301452424.282557] http_request([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301452424.0315, duration=0.183290958404541, service={}, addl="", hot=0, history="ShAD"]"GET""/""/""1.0")
|
||||
Event [1301452424.282557] http_begin_entity([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301452424.0315, duration=0.183290958404541, service={}, addl="%events-send-1", hot=0, history="ShAD"]T)
|
||||
Event [1301452424.284421] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301452424.0315, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T"USER-AGENT""Wget/1.10")
|
||||
Event [1301452424.284421] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301452424.0315, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T"ACCEPT""*/*")
|
||||
Event [1301452424.284421] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301452424.0315, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T"HOST""www.icir.org")
|
||||
Event [1301452424.284421] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301452424.0315, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T"CONNECTION""Keep-Alive")
|
||||
Event [1301452424.284421] http_content_type([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301452424.0315, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T"TEXT""PLAIN")
|
||||
Event [1301452424.284421] http_end_entity([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301452424.0315, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T)
|
||||
Event [1301452424.284421] http_message_done([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301452424.0315, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T[start=1301452424.21479, interrupted=F, finish_msg="message ends normally", body_length=0, content_gap_length=0, header_length=86])
|
||||
Event [1301452424.465561] http_reply([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301452424.0315, duration=0.367331027984619, service={}, addl="%events-send-1", hot=0, history="ShADd"]"1.1"200"OK")
|
||||
Event [1301452424.465561] http_begin_entity([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301452424.0315, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F)
|
||||
Event [1301452424.465561] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301452424.0315, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"DATE""Fri, 07 Oct 2005 23:23:55 GMT")
|
||||
Event [1301452424.465561] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301452424.0315, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"SERVER""Apache/1.3.33 (Unix)")
|
||||
Event [1301452424.465561] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301452424.0315, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"LAST-MODIFIED""Fri, 07 Oct 2005 16:23:01 GMT")
|
||||
Event [1301452424.465561] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301452424.0315, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"ETAG"""2c96c-23aa-4346a0e5"")
|
||||
Event [1301452424.465561] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301452424.0315, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"ACCEPT-RANGES""bytes")
|
||||
Event [1301452424.465561] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301452424.0315, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"CONTENT-LENGTH""9130")
|
||||
Event [1301452424.465561] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301452424.0315, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"KEEP-ALIVE""timeout=15, max=100")
|
||||
Event [1301452424.465561] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301452424.0315, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"CONNECTION""Keep-Alive")
|
||||
Event [1301452424.465561] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301452424.0315, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"CONTENT-TYPE""text/html")
|
||||
Event [1301452424.465561] http_content_type([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301452424.0315, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"TEXT""HTML")
|
||||
Event [1301452424.648565] http_entity_data([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=5792, state=4], start_time=1301452424.0315, duration=0.551820039749146, service={}, addl="%events-send-1", hot=0, history="ShADd"]F4096"<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"^J"http://www.w3.org/TR/REC-html40/loose.dtd">^J<HEAD><TITLE>ICIR</TITLE></HEAD>^J<BODY bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#b20000">^J<img src=icir.gif alt="ICIR"><br>^J<p>^JICIR (The ICSI Center for Internet Research)^Jis a ^Jnon-profit^Jresearch institute at^J<a href="http://www.icsi.berkeley.edu">ICSI</a>^Jin ^J<a href="http://dir.yahoo.com/Regional/U_S__States/California/Cities/Berkeley/">Berkeley</a>, ^JCalifornia.<br>^JFor the three years from 1999 to 2001 we were named^JACIRI, the AT&T Center for Internet Research at ICSI, ^Jand were funded by <a href="http://www.att.com">AT&T</a>.<br>^J^JThe goals of ICIR are to:^J<ul>^J<li>Pursue research on the Internet architecture and related networking issues,^J<li>^JParticipate actively in the research (<a href="http://www.acm.org/sigcomm/">SIGCOMM</a> and <a href="http://www.irtf.org/">IRTF</a>) and^Jstandards (<a href="http://www.ietf.org/">IETF</a>) communities,^J<li> Bridge the gap between the Internet research community and commercial ^Jinterests by providing a neutral forum where topics of mutual technical ^Jinterest can be addressed.^J</ul>^J<p>^J<!--^JICIR is now ^J<a href="jobs.html">^Jhiring</a> for both postdoctoral positions and summer interns.^J-->^J<hr>^J^J<DIV ALIGN="CENTER">^J^J<table width="100%" cellspacing=16 cellpadding=0>^J^J<tr>^J<td width="35%" valign=top>^J^J<h2>^JPeople^J</h2>^J<ul>^J<li>^J<a href="./shenker/">^JScott Shenker</a>, Group Leader<br> ^J<li><a href="http://www.icir.org/mallman/">Mark Allman</a>^J<li>^J<a href="./floyd/">Sally Floyd</a>^J<!--^J<li><a href="http://www.isi.edu/~govindan/">Ramesh Govindan</a>^J-->^J<li>^J<a href="./karp/papers.html">^JRichard Karp</a> ^J<!-- (also with the ^J<a href="http://www.icsi.berkeley.edu/Theory/">ICSI Theory Group</a>, ^J<a href="http://www.msri.org/">MSRI</a>, and^J<a href="http://www.cs.berkeley.edu/">UC Berkeley</a>) -->^J<li>^J<a href="./vern/">^JVern Paxson</a> ^J<li>^J<a href="http://www.icir.org/robin/">^JRobin Sommer</a>^J<li>^J<a href="http://www.cs.berkeley.edu/~nweaver/">^JNicholas Weaver</a>^J<li>^J<a href="http://www.icsi.berkeley.edu/~zhao/">^JJerry Zhao</a>^J<!-- </ul> <b>Group Members</b> <ul> -->^J<li><b><a href="pastvisitors.html">Past Group Members</a></b>,^J<br>including:^J<ul>^J<li>^J<a href="http://www.cs.ucl.ac.uk/staff/M.Handley/">^JMark Handley</a> (UCL)^J<li><a href="./kohler/">Eddie Kohler</a> (UCLA)^J</ul>^J<li><b>Affiliated <a href="http://www.xorp.org/">Xorp</a>^JResearchers</b>:^J <ul>^J <li><a href="./jcardona/">Javier Cardona</a>^J <li><a href="./atanu/">Atanu Ghosh</a> ^J <li><a href="./hodson/">Orion Hodson</a>^J <li><a href="./pavlin/">Pavlin Radoslavov</a> ^J <li><a href="http://www.iet.unipi.it/~luigi">Luigi Rizzo</a>^J <li><a href="http://people.freebsd.org/~bms/">Bruce Simpson</a>^J</ul>^J<li><b>Affiliated UCB Researchers</b>:^J <ul>^J <li><a href="http://www.cs.berkeley.edu/~christos/">Christos Papadimitriou</a>^J <li><a href="http://www.cs.berkeley.edu/~istoica/">Ion Stoica</a>^J </ul>^J<li><b>Visitors</b>:^J <ul>^J <li><a href="http://grid.sjtu.edu.cn/teachers/dengqn/dengqn.htm">Professor Quin-Ni Deng</a>^J<!--^J from Shanghai Jiaotong University^J-->^J <li>Teemu Koponen^J<!--^J , Helsinki Institute for Information Technology^J-->^J </ul>^J<!--^J<li><a href="pastvisitors.html">Other researchers</a>^J-->^J<a name=Visitors></a>^J<li><b>Interns:</b>^J<ul>^J<li>Juan Caballero^J<li><a href="http://www.stanford.edu/~casado/">Martin Casado</a>^J<li><a href="http://www.cs.rice.edu/~scrosby/">Scott Crosby</a>^J<li><a href="http://bnrg.cs.berkeley.edu/~wdc/">Weidong Cui</a>^J<li><a href="http://www.cs.berkeley.edu/~chema">Chema Gonzalez</a>^J<li>Halldor Isak Gylfason^J<li><a href="http://www.cl.cam.ac.uk/~cpk25/">Christian Kreibich</a>^J<li><a href="http://www.cs.ucsd.edu/~braghava">Barath Raghavan</a>^J<!--^J<li><a href="newinterns.html">New Interns:</a> ^J-->^J</ul>^J<li><b>Undergraduate Interns:</b>^J<ul>^J<li>Michael Hoisie^J<li>Arthur Wayne Liao^J<li>Christopher Portka^J</ul>^J<li><b><a href="pastvisitors.html">Past Visitors and Interns:</a></b>^J</ul>^J^J</td>^J<td width="30%" vali")
|
||||
Event [1301452424.689566] http_entity_data([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=8688, state=4], start_time=1301452424.0315, duration=0.552114009857178, service={}, addl="%events-send-1", hot=0, history="ShADd"]F4096"gn=top>^J^J<h2>^JPublications^J</h2>^J<ul>^J<li><a href="./rfcs.html">^JRFCs</a> with ICIR authors.^J<li>^J<a href="./internetdrafts.html">^JInternet drafts</a> with ICIR authors, 3/2004 ^J(or <a href="http://www.rfc-editor.org/idsearch.html">search</a>^Jthe current list).^J<!--^Jfor "Shenker OR Floyd OR Allman OR Paxson".^J(or the ^J<a^Jhref="^Jhttp://search.ietf.org:80/search/cgi-bin/BrokerQuery.pl.cgi?broker=internet-drafts&query=%28Author%3A+Shenker+OR+Floyd+OR+Handley+OR+Paxson+OR+Kohler%29&caseflag=on&wordflag=off&errorflag=0&maxlineflag=50&maxresultflag=1000&descflag=on&sort=by-NML&verbose=on&maxobjflag=25">current list</a>.)^J^Jhttp://search.ietf.org:80/search/cgi-bin/BrokerQuery.pl.cgi?broker=internet-drafts&query=(Shenker+OR+Floyd+OR+Handley+OR+Paxson+OR+Kohler)&descflag=on">current list</a>).^J-->^J<!--^Jfrom the ^J<a href="http://search.ietf.org/search/brokers/internet-drafts/query.html">^JInternet-Drafts Search Engine</a>).^J-->^J<li>Papers by ^J<a href="./shenker/papers.html">Scott Shenker</a>^J(<a^Jhref="http://citeseer.ist.psu.edu/cs?qb=dbnum%3D1%2Cqtype%3Dcitation:&q=Scott%20w/2%20Shenker%20or%20S%20w/2%20Shenker&co=Citations">RI</a>),^J^J<a href="./mallman/papers/">Mark Allman</a>^J(<a^Jhref="http://citeseer.ist.psu.edu/cs?qb=dbnum%3D1%2Cqtype%3Dcitation:&q=Mark%20w/2%20Allman%20or%20S%20w/2%20Allman&co=Citations">RI</a>),^J^J<a href="./floyd/papers.html">Sally Floyd</a>^J(<a^Jhref="http://citeseer.ist.psu.edu/cs?qb=dbnum%3D1%2Cqtype%3Dcitation:&q=Sally%20w/2%20Floyd%20or%20S%20w/2%20Floyd&co=Citations">RI</a>),^J^J<a href="./karp/papers.html">Richard Karp</a>^J(<a^Jhref="http://citeseer.ist.psu.edu/cs?qb=dbnum%3D1%2Cqtype%3Dcitation:&q=Richard%20w/2%20Karp%20or%20R%20w/2%20Karp&co=Citations">RI</a>),^J<a href="./kohler/pubs/">Eddie Kohler</a>^J(<a^Jhref="http://citeseer.ist.psu.edu/cs?qb=dbnum%3D1%2Cqtype%3Dcitation:&q=eddie%20w/2%20kohler%20or%20e%20w/2%20kohler&co=Citations">RI</a>),^J<a href="./vern/papers.html">Vern Paxson</a>^J(<a^Jhref="http://citeseer.ist.psu.edu/cs?qb=dbnum%3D1%2Cqtype%3Dcitation:&q=Vern%20w/2%20Paxson%20or%20V%20w/2%20Paxson&co=Citations">RI</a>).^J<li>The <a href="http://citeseer.ist.psu.edu/">^JResearchIndex</a> (RI) and the ^J<a href="http://citeseer.ist.psu.edu/cs">Search</a>^Jand ^J<a href="http://citeseer.ist.psu.edu/Networking/">^JNetworking</a> pages. ^J</ul>^J^J<h2>^JProjects ^J</h2>^J<ul>^J<li>^J<a href="./vern/bro-info.html">Bro</a>^J(detecting network intruders). ^J<li>The <a href="http://www.isi.edu/newarch/">NewArch</a> Project:^JFuture-Generation Internet Architecture.^J<LI>The <a href="http://www.isi.edu/nsnam/ns/">NS</a>^Jnetwork simulator.^J<li> <a href="./tbit/">TBIT</a>^J(TCP Behavior Identification Tool).^J<li> <a href="http://www.xorp.org/">Xorp</a>^J(Extensible Open Router Platform).^J<li>^J<a href="./funded_projects.html">^JOther Funded Projects</a>.^J<li>^J<a href="./research.html">^JAdditional Research Links</a>.^J</ul>^J^J^J</td>^J^J<td width="35%" valign=top>^J ^J<h2>Research</h2>^J <b>Transport and Congestion</b>^J<ul>^J<li>^J<a href="./kohler/dcp/">DCCP</a>^J(Datagram Congestion Control Protocol).^J<li>^J<a href="./floyd/ecn.html">ECN</a>^J(Explicit Congestion Notification).^J<li>^J<a href="http://www.ietf.org/html.charters/intserv-charter.html">^JIntegrated services</a>.^J<li>^J<a href="./floyd/red.html">RED</a> ^Jqueue management, and^J<a href="./red-pd/">RED-PD</a>.^J<li>^J<a href="./floyd/hstcp.html">HighSpeed TCP</a>.^J<li>^J<a^Jhref="http://www.ietf.cnri.reston.va.us/html.charters/OLD/tcpimpl-charter.html">^JTCP Implementation</a>.^J<li>^JReordering-Robust TCP ^J(<a href="./bkarp/RR-TCP/">RR-TCP</a>).^J<li>TCP^J<a href="./floyd/sacks.html">SACK</a> ^J(Selective Acknowledgment).^J<li>^J<a href="./tfrc/">TFRC</a> ^J(TCP-Friendly Rate Control).^J</ul>^J^J <b>Traffic and Topology</b>^J<ul>^J<LI>^J<a href="http://idmaps.eecs.umich.edu/">IDMaps</a> ^J(Internet Distance Mapping).^J<LI>The <a href="http://www.acm.org/sigcomm/ITA/">^JInternet Traffic Archive</a>.^J<li>^J<a href="http://www-net.cs.umass.edu/minc/">MINC</a>^J(Multicast-based Inference of Network-internal Characteristics).^J<li>^J<a href="http://www.psc.edu/networking/nimi/">NIMI</a>^J(N")
|
||||
Event [1301452424.832570] http_entity_data([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=9417, state=4], start_time=1301452424.0315, duration=0.73563814163208, service={}, addl="%events-send-1", hot=0, history="ShADd"]F938"ational Internet Measurement Infrastructure).^J</ul>^J^J<h2>^J<a href="./collaborators.html">^JCollaborators</a>^J</h2>^J^J<!--^J <b>Multicast and Multimedia</b>^J<ul>^J<LI><A href="/malloc/">MALLOC</a>^J(Multicast Address Allocation).^J<LI><a href="http://www.cs.columbia.edu/~hgs/sip/">SIP</a>^J(Session Initiation Protocol).^J<li> <a href="yoid"> Yoid</a> (host-based content distribution). ^J</ul>^J-->^J^J</td>^J^J</tr>^J</table>^J</DIV>^J^J<hr>^J<h2>Information for <a href="./abouticir.html">visitors</a> and <a href="/sysdocs/">local users</a>.</h2>^J<hr>^JLast modified: June 2004. <a href="./COPYRIGHTS">Copyright notice</a>.^J<a href="http://web.archive.org/web/*/http://www.aciri.org/">^JOlder versions</a> of this web page, in its ACIRI incarnation..^J<BR>^JFor more information about this server, mail <I>www@aciri.org</I>. ^J<BR>^JTo report <a href="scanning.html">unusual activity</a> by any of our hosts, mail <I>abuse@aciri.org</I>.^J</BODY>^J")
|
||||
Event [1301452424.832570] http_end_entity([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=9417, state=4], start_time=1301452424.0315, duration=0.73563814163208, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F)
|
||||
Event [1301452424.832570] http_message_done([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=9417, state=4], start_time=1301452424.0315, duration=0.73563814163208, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F[start=1301452424.39883, interrupted=F, finish_msg="message ends normally", body_length=9130, content_gap_length=0, header_length=265])
|
||||
Event [1301452424.990539] net_done(1301452424.99054)
|
||||
Event [1301452424.990539] bro_done()
|
1
testing/btest/Baseline/istate.base/receiver.conn.log
Normal file
1
testing/btest/Baseline/istate.base/receiver.conn.log
Normal file
|
@ -0,0 +1 @@
|
|||
1301452418.931393 0.182433 141.42.64.125 125.190.109.199 other 56729 12345 tcp ? ? REJ X
|
18
testing/btest/Baseline/istate.base/receiver.http.log
Normal file
18
testing/btest/Baseline/istate.base/receiver.http.log
Normal file
|
@ -0,0 +1,18 @@
|
|||
1301452424.282557 %events-rcv-1 start 141.42.64.125:56730 > 125.190.109.199:80
|
||||
1301452424.284421 %events-rcv-1 > USER-AGENT: Wget/1.10
|
||||
1301452424.284421 %events-rcv-1 > ACCEPT: */*
|
||||
1301452424.284421 %events-rcv-1 > HOST: www.icir.org
|
||||
1301452424.284421 %events-rcv-1 > CONNECTION: Keep-Alive
|
||||
1301452424.465561 %events-rcv-1 < DATE: Fri, 07 Oct 2005 23:23:55 GMT
|
||||
1301452424.465561 %events-rcv-1 < SERVER: Apache/1.3.33 (Unix)
|
||||
1301452424.465561 %events-rcv-1 < LAST-MODIFIED: Fri, 07 Oct 2005 16:23:01 GMT
|
||||
1301452424.465561 %events-rcv-1 < ETAG: "2c96c-23aa-4346a0e5"
|
||||
1301452424.465561 %events-rcv-1 < ACCEPT-RANGES: bytes
|
||||
1301452424.465561 %events-rcv-1 < CONTENT-LENGTH: 9130
|
||||
1301452424.465561 %events-rcv-1 < KEEP-ALIVE: timeout=15, max=100
|
||||
1301452424.465561 %events-rcv-1 < CONNECTION: Keep-Alive
|
||||
1301452424.465561 %events-rcv-1 < CONTENT-TYPE: text/html
|
||||
1301452424.648565 %events-rcv-1 <= 4096 bytes: "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML ..."
|
||||
1301452424.689566 %events-rcv-1 <= 4096 bytes: "gn=top>^J^J<h2>^JPublications^J</h2>^J<ul>^J<l..."
|
||||
1301452424.832570 %events-rcv-1 <= 938 bytes: "ational Internet Measurement Infrastruct..."
|
||||
1301452424.832570 %events-rcv-1 GET / (200 "OK" [9130] www.icir.org)
|
2
testing/btest/Baseline/istate.base/sender.conn.log
Normal file
2
testing/btest/Baseline/istate.base/sender.conn.log
Normal file
|
@ -0,0 +1,2 @@
|
|||
1301452418.931393 0.182433 141.42.64.125 125.190.109.199 other 56729 12345 tcp ? ? REJ X
|
||||
1301452424.031503 ? 141.42.64.125 125.190.109.199 http 56730 80 tcp 98 9417 S1 X %events-send-1
|
18
testing/btest/Baseline/istate.base/sender.http.log
Normal file
18
testing/btest/Baseline/istate.base/sender.http.log
Normal file
|
@ -0,0 +1,18 @@
|
|||
1301452424.214794 %events-send-1 start 141.42.64.125:56730 > 125.190.109.199:80
|
||||
1301452424.214794 %events-send-1 > USER-AGENT: Wget/1.10
|
||||
1301452424.214794 %events-send-1 > ACCEPT: */*
|
||||
1301452424.214794 %events-send-1 > HOST: www.icir.org
|
||||
1301452424.214794 %events-send-1 > CONNECTION: Keep-Alive
|
||||
1301452424.398834 %events-send-1 < DATE: Fri, 07 Oct 2005 23:23:55 GMT
|
||||
1301452424.398834 %events-send-1 < SERVER: Apache/1.3.33 (Unix)
|
||||
1301452424.398834 %events-send-1 < LAST-MODIFIED: Fri, 07 Oct 2005 16:23:01 GMT
|
||||
1301452424.398834 %events-send-1 < ETAG: "2c96c-23aa-4346a0e5"
|
||||
1301452424.398834 %events-send-1 < ACCEPT-RANGES: bytes
|
||||
1301452424.398834 %events-send-1 < CONTENT-LENGTH: 9130
|
||||
1301452424.398834 %events-send-1 < KEEP-ALIVE: timeout=15, max=100
|
||||
1301452424.398834 %events-send-1 < CONNECTION: Keep-Alive
|
||||
1301452424.398834 %events-send-1 < CONTENT-TYPE: text/html
|
||||
1301452424.583323 %events-send-1 <= 4096 bytes: "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML ..."
|
||||
1301452424.583617 %events-send-1 <= 4096 bytes: "gn=top>^J^J<h2>^JPublications^J</h2>^J<ul>^J<l..."
|
||||
1301452424.767141 %events-send-1 <= 938 bytes: "ational Internet Measurement Infrastruct..."
|
||||
1301452424.767141 %events-send-1 GET / (200 "OK" [9130] www.icir.org)
|
33
testing/btest/Baseline/istate.events/events
Normal file
33
testing/btest/Baseline/istate.events/events
Normal file
|
@ -0,0 +1,33 @@
|
|||
Event [1301459542.350102] connection_pending([id=[orig_h=141.42.64.125, orig_p=56729/tcp, resp_h=125.190.109.199, resp_p=12345/tcp], orig=[size=0, state=1], resp=[size=0, state=6], start_time=1301459537.18049, duration=0.182432889938354, service={}, addl="", hot=0, history="Sr"])
|
||||
Event [1301459542.350102] connection_state_remove([id=[orig_h=141.42.64.125, orig_p=56729/tcp, resp_h=125.190.109.199, resp_p=12345/tcp], orig=[size=0, state=1], resp=[size=0, state=6], start_time=1301459537.18049, duration=0.182432889938354, service={}, addl="", hot=0, history="Sr"])
|
||||
Event [1301459542.350102] new_connection([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=0, state=1], resp=[size=0, state=0], start_time=1301459542.2806, duration=0.0, service={}, addl="cc=1", hot=0, history=""])
|
||||
Event [1301459542.531108] connection_established([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=0, state=4], resp=[size=0, state=4], start_time=1301459542.2806, duration=0.182510137557983, service={}, addl="", hot=0, history="Sh"])
|
||||
Event [1301459542.533110] protocol_confirmation([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301459542.2806, duration=0.183290958404541, service={}, addl="", hot=0, history="ShAD"]165)
|
||||
Event [1301459542.533110] http_request([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301459542.2806, duration=0.183290958404541, service={}, addl="", hot=0, history="ShAD"]"GET""/""/""1.0")
|
||||
Event [1301459542.533110] http_begin_entity([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301459542.2806, duration=0.183290958404541, service={}, addl="%events-send-1", hot=0, history="ShAD"]T)
|
||||
Event [1301459542.533110] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301459542.2806, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T"USER-AGENT""Wget/1.10")
|
||||
Event [1301459542.533110] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301459542.2806, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T"ACCEPT""*/*")
|
||||
Event [1301459542.533110] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301459542.2806, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T"HOST""www.icir.org")
|
||||
Event [1301459542.533110] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301459542.2806, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T"CONNECTION""Keep-Alive")
|
||||
Event [1301459542.533110] http_content_type([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301459542.2806, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T"TEXT""PLAIN")
|
||||
Event [1301459542.533110] http_end_entity([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301459542.2806, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T)
|
||||
Event [1301459542.533110] http_message_done([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=0, state=4], start_time=1301459542.2806, duration=0.183290958404541, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShAD"]T[start=1301459542.46389, interrupted=F, finish_msg="message ends normally", body_length=0, content_gap_length=0, header_length=86])
|
||||
Event [1301459542.717115] http_reply([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301459542.2806, duration=0.367331027984619, service={}, addl="%events-send-1", hot=0, history="ShADd"]"1.1"200"OK")
|
||||
Event [1301459542.717115] http_begin_entity([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301459542.2806, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F)
|
||||
Event [1301459542.717115] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301459542.2806, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"DATE""Fri, 07 Oct 2005 23:23:55 GMT")
|
||||
Event [1301459542.717115] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301459542.2806, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"SERVER""Apache/1.3.33 (Unix)")
|
||||
Event [1301459542.717115] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301459542.2806, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"LAST-MODIFIED""Fri, 07 Oct 2005 16:23:01 GMT")
|
||||
Event [1301459542.717115] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301459542.2806, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"ETAG"""2c96c-23aa-4346a0e5"")
|
||||
Event [1301459542.717115] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301459542.2806, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"ACCEPT-RANGES""bytes")
|
||||
Event [1301459542.717115] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301459542.2806, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"CONTENT-LENGTH""9130")
|
||||
Event [1301459542.717115] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301459542.2806, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"KEEP-ALIVE""timeout=15, max=100")
|
||||
Event [1301459542.717115] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301459542.2806, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"CONNECTION""Keep-Alive")
|
||||
Event [1301459542.717115] http_header([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301459542.2806, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"CONTENT-TYPE""text/html")
|
||||
Event [1301459542.717115] http_content_type([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=1448, state=4], start_time=1301459542.2806, duration=0.367331027984619, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F"TEXT""HTML")
|
||||
Event [1301459542.901119] http_entity_data([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=5792, state=4], start_time=1301459542.2806, duration=0.551820039749146, service={}, addl="%events-send-1", hot=0, history="ShADd"]F4096"<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"^J"http://www.w3.org/TR/REC-html40/loose.dtd">^J<HEAD><TITLE>ICIR</TITLE></HEAD>^J<BODY bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#b20000">^J<img src=icir.gif alt="ICIR"><br>^J<p>^JICIR (The ICSI Center for Internet Research)^Jis a ^Jnon-profit^Jresearch institute at^J<a href="http://www.icsi.berkeley.edu">ICSI</a>^Jin ^J<a href="http://dir.yahoo.com/Regional/U_S__States/California/Cities/Berkeley/">Berkeley</a>, ^JCalifornia.<br>^JFor the three years from 1999 to 2001 we were named^JACIRI, the AT&T Center for Internet Research at ICSI, ^Jand were funded by <a href="http://www.att.com">AT&T</a>.<br>^J^JThe goals of ICIR are to:^J<ul>^J<li>Pursue research on the Internet architecture and related networking issues,^J<li>^JParticipate actively in the research (<a href="http://www.acm.org/sigcomm/">SIGCOMM</a> and <a href="http://www.irtf.org/">IRTF</a>) and^Jstandards (<a href="http://www.ietf.org/">IETF</a>) communities,^J<li> Bridge the gap between the Internet research community and commercial ^Jinterests by providing a neutral forum where topics of mutual technical ^Jinterest can be addressed.^J</ul>^J<p>^J<!--^JICIR is now ^J<a href="jobs.html">^Jhiring</a> for both postdoctoral positions and summer interns.^J-->^J<hr>^J^J<DIV ALIGN="CENTER">^J^J<table width="100%" cellspacing=16 cellpadding=0>^J^J<tr>^J<td width="35%" valign=top>^J^J<h2>^JPeople^J</h2>^J<ul>^J<li>^J<a href="./shenker/">^JScott Shenker</a>, Group Leader<br> ^J<li><a href="http://www.icir.org/mallman/">Mark Allman</a>^J<li>^J<a href="./floyd/">Sally Floyd</a>^J<!--^J<li><a href="http://www.isi.edu/~govindan/">Ramesh Govindan</a>^J-->^J<li>^J<a href="./karp/papers.html">^JRichard Karp</a> ^J<!-- (also with the ^J<a href="http://www.icsi.berkeley.edu/Theory/">ICSI Theory Group</a>, ^J<a href="http://www.msri.org/">MSRI</a>, and^J<a href="http://www.cs.berkeley.edu/">UC Berkeley</a>) -->^J<li>^J<a href="./vern/">^JVern Paxson</a> ^J<li>^J<a href="http://www.icir.org/robin/">^JRobin Sommer</a>^J<li>^J<a href="http://www.cs.berkeley.edu/~nweaver/">^JNicholas Weaver</a>^J<li>^J<a href="http://www.icsi.berkeley.edu/~zhao/">^JJerry Zhao</a>^J<!-- </ul> <b>Group Members</b> <ul> -->^J<li><b><a href="pastvisitors.html">Past Group Members</a></b>,^J<br>including:^J<ul>^J<li>^J<a href="http://www.cs.ucl.ac.uk/staff/M.Handley/">^JMark Handley</a> (UCL)^J<li><a href="./kohler/">Eddie Kohler</a> (UCLA)^J</ul>^J<li><b>Affiliated <a href="http://www.xorp.org/">Xorp</a>^JResearchers</b>:^J <ul>^J <li><a href="./jcardona/">Javier Cardona</a>^J <li><a href="./atanu/">Atanu Ghosh</a> ^J <li><a href="./hodson/">Orion Hodson</a>^J <li><a href="./pavlin/">Pavlin Radoslavov</a> ^J <li><a href="http://www.iet.unipi.it/~luigi">Luigi Rizzo</a>^J <li><a href="http://people.freebsd.org/~bms/">Bruce Simpson</a>^J</ul>^J<li><b>Affiliated UCB Researchers</b>:^J <ul>^J <li><a href="http://www.cs.berkeley.edu/~christos/">Christos Papadimitriou</a>^J <li><a href="http://www.cs.berkeley.edu/~istoica/">Ion Stoica</a>^J </ul>^J<li><b>Visitors</b>:^J <ul>^J <li><a href="http://grid.sjtu.edu.cn/teachers/dengqn/dengqn.htm">Professor Quin-Ni Deng</a>^J<!--^J from Shanghai Jiaotong University^J-->^J <li>Teemu Koponen^J<!--^J , Helsinki Institute for Information Technology^J-->^J </ul>^J<!--^J<li><a href="pastvisitors.html">Other researchers</a>^J-->^J<a name=Visitors></a>^J<li><b>Interns:</b>^J<ul>^J<li>Juan Caballero^J<li><a href="http://www.stanford.edu/~casado/">Martin Casado</a>^J<li><a href="http://www.cs.rice.edu/~scrosby/">Scott Crosby</a>^J<li><a href="http://bnrg.cs.berkeley.edu/~wdc/">Weidong Cui</a>^J<li><a href="http://www.cs.berkeley.edu/~chema">Chema Gonzalez</a>^J<li>Halldor Isak Gylfason^J<li><a href="http://www.cl.cam.ac.uk/~cpk25/">Christian Kreibich</a>^J<li><a href="http://www.cs.ucsd.edu/~braghava">Barath Raghavan</a>^J<!--^J<li><a href="newinterns.html">New Interns:</a> ^J-->^J</ul>^J<li><b>Undergraduate Interns:</b>^J<ul>^J<li>Michael Hoisie^J<li>Arthur Wayne Liao^J<li>Christopher Portka^J</ul>^J<li><b><a href="pastvisitors.html">Past Visitors and Interns:</a></b>^J</ul>^J^J</td>^J<td width="30%" vali")
|
||||
Event [1301459542.941139] http_entity_data([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=8688, state=4], start_time=1301459542.2806, duration=0.552114009857178, service={}, addl="%events-send-1", hot=0, history="ShADd"]F4096"gn=top>^J^J<h2>^JPublications^J</h2>^J<ul>^J<li><a href="./rfcs.html">^JRFCs</a> with ICIR authors.^J<li>^J<a href="./internetdrafts.html">^JInternet drafts</a> with ICIR authors, 3/2004 ^J(or <a href="http://www.rfc-editor.org/idsearch.html">search</a>^Jthe current list).^J<!--^Jfor "Shenker OR Floyd OR Allman OR Paxson".^J(or the ^J<a^Jhref="^Jhttp://search.ietf.org:80/search/cgi-bin/BrokerQuery.pl.cgi?broker=internet-drafts&query=%28Author%3A+Shenker+OR+Floyd+OR+Handley+OR+Paxson+OR+Kohler%29&caseflag=on&wordflag=off&errorflag=0&maxlineflag=50&maxresultflag=1000&descflag=on&sort=by-NML&verbose=on&maxobjflag=25">current list</a>.)^J^Jhttp://search.ietf.org:80/search/cgi-bin/BrokerQuery.pl.cgi?broker=internet-drafts&query=(Shenker+OR+Floyd+OR+Handley+OR+Paxson+OR+Kohler)&descflag=on">current list</a>).^J-->^J<!--^Jfrom the ^J<a href="http://search.ietf.org/search/brokers/internet-drafts/query.html">^JInternet-Drafts Search Engine</a>).^J-->^J<li>Papers by ^J<a href="./shenker/papers.html">Scott Shenker</a>^J(<a^Jhref="http://citeseer.ist.psu.edu/cs?qb=dbnum%3D1%2Cqtype%3Dcitation:&q=Scott%20w/2%20Shenker%20or%20S%20w/2%20Shenker&co=Citations">RI</a>),^J^J<a href="./mallman/papers/">Mark Allman</a>^J(<a^Jhref="http://citeseer.ist.psu.edu/cs?qb=dbnum%3D1%2Cqtype%3Dcitation:&q=Mark%20w/2%20Allman%20or%20S%20w/2%20Allman&co=Citations">RI</a>),^J^J<a href="./floyd/papers.html">Sally Floyd</a>^J(<a^Jhref="http://citeseer.ist.psu.edu/cs?qb=dbnum%3D1%2Cqtype%3Dcitation:&q=Sally%20w/2%20Floyd%20or%20S%20w/2%20Floyd&co=Citations">RI</a>),^J^J<a href="./karp/papers.html">Richard Karp</a>^J(<a^Jhref="http://citeseer.ist.psu.edu/cs?qb=dbnum%3D1%2Cqtype%3Dcitation:&q=Richard%20w/2%20Karp%20or%20R%20w/2%20Karp&co=Citations">RI</a>),^J<a href="./kohler/pubs/">Eddie Kohler</a>^J(<a^Jhref="http://citeseer.ist.psu.edu/cs?qb=dbnum%3D1%2Cqtype%3Dcitation:&q=eddie%20w/2%20kohler%20or%20e%20w/2%20kohler&co=Citations">RI</a>),^J<a href="./vern/papers.html">Vern Paxson</a>^J(<a^Jhref="http://citeseer.ist.psu.edu/cs?qb=dbnum%3D1%2Cqtype%3Dcitation:&q=Vern%20w/2%20Paxson%20or%20V%20w/2%20Paxson&co=Citations">RI</a>).^J<li>The <a href="http://citeseer.ist.psu.edu/">^JResearchIndex</a> (RI) and the ^J<a href="http://citeseer.ist.psu.edu/cs">Search</a>^Jand ^J<a href="http://citeseer.ist.psu.edu/Networking/">^JNetworking</a> pages. ^J</ul>^J^J<h2>^JProjects ^J</h2>^J<ul>^J<li>^J<a href="./vern/bro-info.html">Bro</a>^J(detecting network intruders). ^J<li>The <a href="http://www.isi.edu/newarch/">NewArch</a> Project:^JFuture-Generation Internet Architecture.^J<LI>The <a href="http://www.isi.edu/nsnam/ns/">NS</a>^Jnetwork simulator.^J<li> <a href="./tbit/">TBIT</a>^J(TCP Behavior Identification Tool).^J<li> <a href="http://www.xorp.org/">Xorp</a>^J(Extensible Open Router Platform).^J<li>^J<a href="./funded_projects.html">^JOther Funded Projects</a>.^J<li>^J<a href="./research.html">^JAdditional Research Links</a>.^J</ul>^J^J^J</td>^J^J<td width="35%" valign=top>^J ^J<h2>Research</h2>^J <b>Transport and Congestion</b>^J<ul>^J<li>^J<a href="./kohler/dcp/">DCCP</a>^J(Datagram Congestion Control Protocol).^J<li>^J<a href="./floyd/ecn.html">ECN</a>^J(Explicit Congestion Notification).^J<li>^J<a href="http://www.ietf.org/html.charters/intserv-charter.html">^JIntegrated services</a>.^J<li>^J<a href="./floyd/red.html">RED</a> ^Jqueue management, and^J<a href="./red-pd/">RED-PD</a>.^J<li>^J<a href="./floyd/hstcp.html">HighSpeed TCP</a>.^J<li>^J<a^Jhref="http://www.ietf.cnri.reston.va.us/html.charters/OLD/tcpimpl-charter.html">^JTCP Implementation</a>.^J<li>^JReordering-Robust TCP ^J(<a href="./bkarp/RR-TCP/">RR-TCP</a>).^J<li>TCP^J<a href="./floyd/sacks.html">SACK</a> ^J(Selective Acknowledgment).^J<li>^J<a href="./tfrc/">TFRC</a> ^J(TCP-Friendly Rate Control).^J</ul>^J^J <b>Traffic and Topology</b>^J<ul>^J<LI>^J<a href="http://idmaps.eecs.umich.edu/">IDMaps</a> ^J(Internet Distance Mapping).^J<LI>The <a href="http://www.acm.org/sigcomm/ITA/">^JInternet Traffic Archive</a>.^J<li>^J<a href="http://www-net.cs.umass.edu/minc/">MINC</a>^J(Multicast-based Inference of Network-internal Characteristics).^J<li>^J<a href="http://www.psc.edu/networking/nimi/">NIMI</a>^J(N")
|
||||
Event [1301459543.085124] http_entity_data([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=9417, state=4], start_time=1301459542.2806, duration=0.73563814163208, service={}, addl="%events-send-1", hot=0, history="ShADd"]F938"ational Internet Measurement Infrastructure).^J</ul>^J^J<h2>^J<a href="./collaborators.html">^JCollaborators</a>^J</h2>^J^J<!--^J <b>Multicast and Multimedia</b>^J<ul>^J<LI><A href="/malloc/">MALLOC</a>^J(Multicast Address Allocation).^J<LI><a href="http://www.cs.columbia.edu/~hgs/sip/">SIP</a>^J(Session Initiation Protocol).^J<li> <a href="yoid"> Yoid</a> (host-based content distribution). ^J</ul>^J-->^J^J</td>^J^J</tr>^J</table>^J</DIV>^J^J<hr>^J<h2>Information for <a href="./abouticir.html">visitors</a> and <a href="/sysdocs/">local users</a>.</h2>^J<hr>^JLast modified: June 2004. <a href="./COPYRIGHTS">Copyright notice</a>.^J<a href="http://web.archive.org/web/*/http://www.aciri.org/">^JOlder versions</a> of this web page, in its ACIRI incarnation..^J<BR>^JFor more information about this server, mail <I>www@aciri.org</I>. ^J<BR>^JTo report <a href="scanning.html">unusual activity</a> by any of our hosts, mail <I>abuse@aciri.org</I>.^J</BODY>^J")
|
||||
Event [1301459543.085124] http_end_entity([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=9417, state=4], start_time=1301459542.2806, duration=0.73563814163208, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F)
|
||||
Event [1301459543.085124] http_message_done([id=[orig_h=141.42.64.125, orig_p=56730/tcp, resp_h=125.190.109.199, resp_p=80/tcp], orig=[size=98, state=4], resp=[size=9417, state=4], start_time=1301459542.2806, duration=0.73563814163208, service={}, addl="%events-send-1 %events-rcv-1", hot=0, history="ShADd"]F[start=1301459542.64793, interrupted=F, finish_msg="message ends normally", body_length=9130, content_gap_length=0, header_length=265])
|
||||
Event [1301459543.238173] net_done(1301459543.23817)
|
||||
Event [1301459543.238173] bro_done()
|
1
testing/btest/Baseline/istate.events/receiver.conn.log
Normal file
1
testing/btest/Baseline/istate.events/receiver.conn.log
Normal file
|
@ -0,0 +1 @@
|
|||
1301459537.180494 0.182433 141.42.64.125 125.190.109.199 other 56729 12345 tcp ? ? REJ X
|
18
testing/btest/Baseline/istate.events/receiver.http.log
Normal file
18
testing/btest/Baseline/istate.events/receiver.http.log
Normal file
|
@ -0,0 +1,18 @@
|
|||
1301459542.533110 %events-rcv-1 start 141.42.64.125:56730 > 125.190.109.199:80
|
||||
1301459542.533110 %events-rcv-1 > USER-AGENT: Wget/1.10
|
||||
1301459542.533110 %events-rcv-1 > ACCEPT: */*
|
||||
1301459542.533110 %events-rcv-1 > HOST: www.icir.org
|
||||
1301459542.533110 %events-rcv-1 > CONNECTION: Keep-Alive
|
||||
1301459542.717115 %events-rcv-1 < DATE: Fri, 07 Oct 2005 23:23:55 GMT
|
||||
1301459542.717115 %events-rcv-1 < SERVER: Apache/1.3.33 (Unix)
|
||||
1301459542.717115 %events-rcv-1 < LAST-MODIFIED: Fri, 07 Oct 2005 16:23:01 GMT
|
||||
1301459542.717115 %events-rcv-1 < ETAG: "2c96c-23aa-4346a0e5"
|
||||
1301459542.717115 %events-rcv-1 < ACCEPT-RANGES: bytes
|
||||
1301459542.717115 %events-rcv-1 < CONTENT-LENGTH: 9130
|
||||
1301459542.717115 %events-rcv-1 < KEEP-ALIVE: timeout=15, max=100
|
||||
1301459542.717115 %events-rcv-1 < CONNECTION: Keep-Alive
|
||||
1301459542.717115 %events-rcv-1 < CONTENT-TYPE: text/html
|
||||
1301459542.901119 %events-rcv-1 <= 4096 bytes: "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML ..."
|
||||
1301459542.941139 %events-rcv-1 <= 4096 bytes: "gn=top>^J^J<h2>^JPublications^J</h2>^J<ul>^J<l..."
|
||||
1301459543.085124 %events-rcv-1 <= 938 bytes: "ational Internet Measurement Infrastruct..."
|
||||
1301459543.085124 %events-rcv-1 GET / (200 "OK" [9130] www.icir.org)
|
2
testing/btest/Baseline/istate.events/sender.conn.log
Normal file
2
testing/btest/Baseline/istate.events/sender.conn.log
Normal file
|
@ -0,0 +1,2 @@
|
|||
1301459537.180494 0.182433 141.42.64.125 125.190.109.199 other 56729 12345 tcp ? ? REJ X
|
||||
1301459542.280604 ? 141.42.64.125 125.190.109.199 http 56730 80 tcp 98 9417 S1 X %events-send-1
|
18
testing/btest/Baseline/istate.events/sender.http.log
Normal file
18
testing/btest/Baseline/istate.events/sender.http.log
Normal file
|
@ -0,0 +1,18 @@
|
|||
1301459542.463895 %events-send-1 start 141.42.64.125:56730 > 125.190.109.199:80
|
||||
1301459542.463895 %events-send-1 > USER-AGENT: Wget/1.10
|
||||
1301459542.463895 %events-send-1 > ACCEPT: */*
|
||||
1301459542.463895 %events-send-1 > HOST: www.icir.org
|
||||
1301459542.463895 %events-send-1 > CONNECTION: Keep-Alive
|
||||
1301459542.647935 %events-send-1 < DATE: Fri, 07 Oct 2005 23:23:55 GMT
|
||||
1301459542.647935 %events-send-1 < SERVER: Apache/1.3.33 (Unix)
|
||||
1301459542.647935 %events-send-1 < LAST-MODIFIED: Fri, 07 Oct 2005 16:23:01 GMT
|
||||
1301459542.647935 %events-send-1 < ETAG: "2c96c-23aa-4346a0e5"
|
||||
1301459542.647935 %events-send-1 < ACCEPT-RANGES: bytes
|
||||
1301459542.647935 %events-send-1 < CONTENT-LENGTH: 9130
|
||||
1301459542.647935 %events-send-1 < KEEP-ALIVE: timeout=15, max=100
|
||||
1301459542.647935 %events-send-1 < CONNECTION: Keep-Alive
|
||||
1301459542.647935 %events-send-1 < CONTENT-TYPE: text/html
|
||||
1301459542.832424 %events-send-1 <= 4096 bytes: "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML ..."
|
||||
1301459542.832718 %events-send-1 <= 4096 bytes: "gn=top>^J^J<h2>^JPublications^J</h2>^J<ul>^J<l..."
|
||||
1301459543.016242 %events-send-1 <= 938 bytes: "ational Internet Measurement Infrastruct..."
|
||||
1301459543.016242 %events-send-1 GET / (200 "OK" [9130] www.icir.org)
|
33
testing/btest/Baseline/istate.persistence/vars.read.log
Normal file
33
testing/btest/Baseline/istate.persistence/vars.read.log
Normal file
|
@ -0,0 +1,33 @@
|
|||
42
|
||||
-42
|
||||
Hallihallo
|
||||
1.2.3.4
|
||||
1.2.0.0/16
|
||||
3.14
|
||||
131.159
|
||||
42.0 secs
|
||||
{
|
||||
[1] = qwerty,
|
||||
[2] = uiop
|
||||
}
|
||||
file "test" of string
|
||||
/^?(12345)$?/
|
||||
{
|
||||
1,
|
||||
5,
|
||||
3,
|
||||
2,
|
||||
4
|
||||
}
|
||||
{
|
||||
[2, DEF] = 102,
|
||||
[1, ABC] = 101,
|
||||
[3, GHI] = 103
|
||||
}
|
||||
{
|
||||
[12345] = /^?(12345)$?/,
|
||||
[12346] = /^?(12345)$?/
|
||||
}
|
||||
42/udp
|
||||
[1, 2, 3]
|
||||
[a=yuyuyu, b=[a=rec1, b=100, c=1.24], c=[a=rec2, b=200, c=2.24], d=7.77]
|
33
testing/btest/Baseline/istate.persistence/vars.write.log
Normal file
33
testing/btest/Baseline/istate.persistence/vars.write.log
Normal file
|
@ -0,0 +1,33 @@
|
|||
42
|
||||
-42
|
||||
Hallihallo
|
||||
1.2.3.4
|
||||
1.2.0.0/16
|
||||
3.14
|
||||
131.159
|
||||
42.0 secs
|
||||
{
|
||||
[1] = qwerty,
|
||||
[2] = uiop
|
||||
}
|
||||
file "test" of string
|
||||
/^?(12345)$?/
|
||||
{
|
||||
1,
|
||||
5,
|
||||
2,
|
||||
4,
|
||||
3
|
||||
}
|
||||
{
|
||||
[1, ABC] = 101,
|
||||
[2, DEF] = 102,
|
||||
[3, GHI] = 103
|
||||
}
|
||||
{
|
||||
[12345] = /^?(12345)$?/,
|
||||
[12346] = /^?(12345)$?/
|
||||
}
|
||||
42/udp
|
||||
[1, 2, 3]
|
||||
[a=yuyuyu, b=[a=rec1, b=100, c=1.24], c=[a=rec2, b=200, c=2.24], d=7.77]
|
34
testing/btest/Baseline/istate.sync/receiver.vars.log
Normal file
34
testing/btest/Baseline/istate.sync/receiver.vars.log
Normal file
|
@ -0,0 +1,34 @@
|
|||
421
|
||||
1234567
|
||||
Jodel
|
||||
4.3.2.1
|
||||
4.0.0.0/8
|
||||
21.0
|
||||
192.150.186
|
||||
42.0 secs
|
||||
{
|
||||
[1] = asdfg2,
|
||||
[3] = asdfg1
|
||||
}
|
||||
file "test2" of string
|
||||
/^?(abbcdefgh)$?/
|
||||
{
|
||||
4,
|
||||
6,
|
||||
3,
|
||||
2,
|
||||
5
|
||||
}
|
||||
{
|
||||
[4, JKL] = 104,
|
||||
[3, GHI] = 103,
|
||||
[2, DEF] = 103
|
||||
}
|
||||
{
|
||||
[12345] = /^?(12345)$?/,
|
||||
[6767] = /^?(QWERTZ)$?/,
|
||||
[12346] = /^?(12345)$?/
|
||||
}
|
||||
6667/tcp
|
||||
[2, 20, 3, 4]
|
||||
[a=zxzxzx, b=[a=pop, b=43, c=9.999], c=[a=IOIOI, b=201, c=612.2], d=6.6666]
|
34
testing/btest/Baseline/istate.sync/sender.vars.log
Normal file
34
testing/btest/Baseline/istate.sync/sender.vars.log
Normal file
|
@ -0,0 +1,34 @@
|
|||
421
|
||||
1234567
|
||||
Jodel
|
||||
4.3.2.1
|
||||
4.0.0.0/8
|
||||
21.0
|
||||
192.150.186
|
||||
42.0 secs
|
||||
{
|
||||
[1] = asdfg2,
|
||||
[3] = asdfg1
|
||||
}
|
||||
file "test2" of string
|
||||
/^?(abbcdefgh)$?/
|
||||
{
|
||||
5,
|
||||
4,
|
||||
6,
|
||||
3,
|
||||
2
|
||||
}
|
||||
{
|
||||
[3, GHI] = 103,
|
||||
[4, JKL] = 104,
|
||||
[2, DEF] = 103
|
||||
}
|
||||
{
|
||||
[6767] = /^?(QWERTZ)$?/,
|
||||
[12345] = /^?(12345)$?/,
|
||||
[12346] = /^?(12345)$?/
|
||||
}
|
||||
6667/tcp
|
||||
[2, 20, 3, 4]
|
||||
[a=zxzxzx, b=[a=pop, b=43, c=9.999], c=[a=IOIOI, b=201, c=612.2], d=6.6666]
|
14
testing/btest/Baseline/language.rec-table-default/output
Normal file
14
testing/btest/Baseline/language.rec-table-default/output
Normal file
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
[foo] = T
|
||||
}
|
||||
{
|
||||
|
||||
}
|
||||
{
|
||||
B,
|
||||
A,
|
||||
C
|
||||
}
|
||||
{
|
||||
|
||||
}
|
34
testing/btest/Baseline/policy.known-hosts-test/.stderr
Normal file
34
testing/btest/Baseline/policy.known-hosts-test/.stderr
Normal file
|
@ -0,0 +1,34 @@
|
|||
weird: 1300475167.097012 non_IPv4_packet
|
||||
1300475168.652003 weird: bad_TCP_checksum
|
||||
1300475168.784020 weird: bad_TCP_checksum
|
||||
1300475168.853899 weird: bad_UDP_checksum
|
||||
1300475168.854378 weird: bad_UDP_checksum
|
||||
1300475168.854837 weird: bad_UDP_checksum
|
||||
1300475168.857956 weird: bad_UDP_checksum
|
||||
1300475168.858306 weird: bad_UDP_checksum
|
||||
1300475168.858713 weird: bad_UDP_checksum
|
||||
1300475168.891644 weird: bad_UDP_checksum
|
||||
1300475168.892037 weird: bad_UDP_checksum
|
||||
1300475168.892414 weird: bad_UDP_checksum
|
||||
1300475168.893988 weird: bad_UDP_checksum
|
||||
1300475168.894422 weird: bad_UDP_checksum
|
||||
1300475168.894787 weird: bad_UDP_checksum
|
||||
1300475168.901749 weird: bad_UDP_checksum
|
||||
1300475168.902195 weird: bad_UDP_checksum
|
||||
1300475168.916018 weird: bad_TCP_checksum
|
||||
1300475168.916183 weird: bad_TCP_checksum
|
||||
1300475168.918358 weird: bad_TCP_checksum
|
||||
1300475168.952296 weird: bad_TCP_checksum
|
||||
1300475168.952307 weird: bad_TCP_checksum
|
||||
1300475168.954820 weird: bad_TCP_checksum
|
||||
1300475168.962687 weird: bad_TCP_checksum
|
||||
1300475168.975934 weird: bad_TCP_checksum
|
||||
1300475168.976436 weird: bad_TCP_checksum
|
||||
1300475168.979264 weird: bad_TCP_checksum
|
||||
1300475169.014593 weird: bad_TCP_checksum
|
||||
1300475169.014619 weird: bad_TCP_checksum
|
||||
1300475169.014927 weird: bad_TCP_checksum
|
||||
weird: 1300475171.675372 non_IPv4_packet
|
||||
weird: 1300475171.775468 non_IPv4_packet
|
||||
weird: 1300475173.116749 non_IPv4_packet
|
||||
weird: 1300475173.216550 non_IPv4_packet
|
0
testing/btest/Baseline/policy.known-hosts-test/.stdout
Normal file
0
testing/btest/Baseline/policy.known-hosts-test/.stdout
Normal file
|
@ -0,0 +1,5 @@
|
|||
ts address
|
||||
1300475168.78384 141.142.220.118
|
||||
1300475168.78384 208.80.152.118
|
||||
1300475168.91594 208.80.152.3
|
||||
1300475168.96263 208.80.152.2
|
12472
testing/btest/Baseline/policy.known-services-test/.stderr
Normal file
12472
testing/btest/Baseline/policy.known-services-test/.stderr
Normal file
File diff suppressed because it is too large
Load diff
229
testing/btest/Baseline/policy.known-services-test/KNOWN_SERVICES
Normal file
229
testing/btest/Baseline/policy.known-services-test/KNOWN_SERVICES
Normal file
|
@ -0,0 +1,229 @@
|
|||
ts host port_num service
|
||||
964800423.225612 10.20.1.11 80/tcp {
|
||||
|
||||
}
|
||||
964800428.605284 10.20.11.81 3820/tcp {
|
||||
|
||||
}
|
||||
964800432.833579 10.20.11.81 3821/tcp {
|
||||
|
||||
}
|
||||
964800432.220536 10.20.1.8 21/tcp {
|
||||
|
||||
}
|
||||
964800435.180757 10.20.1.8 80/tcp {
|
||||
|
||||
}
|
||||
964800436.657053 10.20.11.81 3822/tcp {
|
||||
|
||||
}
|
||||
964800445.136946 10.20.11.81 3823/tcp {
|
||||
|
||||
}
|
||||
964800447.050657 10.20.11.81 3824/tcp {
|
||||
|
||||
}
|
||||
964800449.128463 10.20.11.81 3825/tcp {
|
||||
|
||||
}
|
||||
964800460.548618 10.20.1.11 220/tcp {
|
||||
|
||||
}
|
||||
964800470.053399 10.20.1.128 32777/tcp {
|
||||
|
||||
}
|
||||
964800470.255065 10.20.1.128 32778/tcp {
|
||||
|
||||
}
|
||||
964800470.326786 10.20.1.128 111/tcp {
|
||||
|
||||
}
|
||||
964800472.135373 10.20.1.128 7/tcp {
|
||||
|
||||
}
|
||||
964800470.551502 10.20.1.128 7100/tcp {
|
||||
|
||||
}
|
||||
964800470.557677 10.20.1.128 32771/tcp {
|
||||
|
||||
}
|
||||
964800470.595967 10.20.1.128 32775/tcp {
|
||||
|
||||
}
|
||||
964800470.695017 10.20.1.128 32779/tcp {
|
||||
|
||||
}
|
||||
964800470.736744 10.20.1.128 32776/tcp {
|
||||
|
||||
}
|
||||
964800470.741478 10.20.1.128 32773/tcp {
|
||||
|
||||
}
|
||||
964800470.735628 10.20.1.128 2049/tcp {
|
||||
|
||||
}
|
||||
964800470.691559 10.20.1.128 6112/tcp {
|
||||
|
||||
}
|
||||
964800470.080672 10.20.1.128 515/tcp {
|
||||
|
||||
}
|
||||
964800470.166217 10.20.1.128 32772/tcp {
|
||||
|
||||
}
|
||||
964800470.023879 10.20.1.128 9/tcp {
|
||||
|
||||
}
|
||||
964800470.248286 10.20.1.128 79/tcp {
|
||||
|
||||
}
|
||||
964800470.173476 10.20.1.128 513/tcp {
|
||||
|
||||
}
|
||||
964800470.288767 10.20.1.128 514/tcp {
|
||||
|
||||
}
|
||||
964800470.688531 10.20.1.128 512/tcp {
|
||||
|
||||
}
|
||||
964800470.211035 10.20.1.128 22/tcp {
|
||||
|
||||
}
|
||||
964800470.49665 10.20.1.128 23/tcp {
|
||||
|
||||
}
|
||||
964800470.066351 10.20.1.128 37/tcp {
|
||||
|
||||
}
|
||||
964800470.599661 10.20.1.128 19/tcp {
|
||||
|
||||
}
|
||||
964800470.552646 10.20.1.128 13/tcp {
|
||||
|
||||
}
|
||||
964800470.557883 10.20.1.128 25/tcp {
|
||||
|
||||
}
|
||||
964800470.784425 10.20.1.128 540/tcp {
|
||||
|
||||
}
|
||||
964800470.292463 10.20.1.128 21/tcp {
|
||||
|
||||
}
|
||||
964800491.909762 10.20.1.133 139/tcp {
|
||||
|
||||
}
|
||||
964800495.488396 10.20.1.32 6000/tcp {
|
||||
|
||||
}
|
||||
964800499.931019 10.20.1.32 22/tcp {
|
||||
|
||||
}
|
||||
964800501.040343 10.20.1.9 80/tcp {
|
||||
|
||||
}
|
||||
964800467.45263 10.20.1.9 110/tcp {
|
||||
|
||||
}
|
||||
964800551.47489 10.20.11.101 79/tcp {
|
||||
|
||||
}
|
||||
964800551.731327 10.20.11.101 22/tcp {
|
||||
|
||||
}
|
||||
964800560.092991 10.20.1.9 22/tcp {
|
||||
|
||||
}
|
||||
964800573.291815 10.20.1.1 22/tcp {
|
||||
|
||||
}
|
||||
964800542.603637 10.20.1.133 21/tcp {
|
||||
|
||||
}
|
||||
964800582.574996 10.20.1.35 25/tcp {
|
||||
|
||||
}
|
||||
964800587.426354 10.20.1.35 21/tcp {
|
||||
|
||||
}
|
||||
964800586.110222 10.20.1.35 23/tcp {
|
||||
|
||||
}
|
||||
964800586.655377 10.20.1.35 22/tcp {
|
||||
|
||||
}
|
||||
964800592.165919 10.20.1.21 21/tcp {
|
||||
|
||||
}
|
||||
964800598.792462 10.20.1.9 25/tcp {
|
||||
|
||||
}
|
||||
964800615.91033 10.20.1.11 21/tcp {
|
||||
|
||||
}
|
||||
964800632.516211 10.20.1.10 25/tcp {
|
||||
|
||||
}
|
||||
964800633.234812 10.20.1.10 80/tcp {
|
||||
|
||||
}
|
||||
964800634.193335 10.20.1.10 21/tcp {
|
||||
|
||||
}
|
||||
964800636.102468 10.20.1.11 443/tcp {
|
||||
|
||||
}
|
||||
964800635.003732 10.20.1.129 79/tcp {
|
||||
|
||||
}
|
||||
964800668.873252 10.20.1.21 110/tcp {
|
||||
|
||||
}
|
||||
964800669.007448 10.20.1.21 111/tcp {
|
||||
|
||||
}
|
||||
964800669.665929 10.20.1.21 80/tcp {
|
||||
|
||||
}
|
||||
964800669.670186 10.20.1.21 690/tcp {
|
||||
|
||||
}
|
||||
964800669.693491 10.20.1.21 2049/tcp {
|
||||
|
||||
}
|
||||
964800670.234186 10.20.1.21 515/tcp {
|
||||
|
||||
}
|
||||
964800670.493675 10.20.1.21 113/tcp {
|
||||
|
||||
}
|
||||
964800670.492704 10.20.1.21 22/tcp {
|
||||
|
||||
}
|
||||
964800676.474475 10.20.1.22 21/tcp {
|
||||
|
||||
}
|
||||
964800673.799597 10.20.1.21 79/tcp {
|
||||
|
||||
}
|
||||
964800675.483229 10.20.1.22 22/tcp {
|
||||
|
||||
}
|
||||
964800670.525453 10.20.1.21 514/tcp {
|
||||
|
||||
}
|
||||
964800703.201113 10.20.1.12 79/tcp {
|
||||
|
||||
}
|
||||
964800633.538485 10.20.11.102 113/tcp {
|
||||
|
||||
}
|
||||
964800470.375479 10.20.1.128 6000/tcp {
|
||||
|
||||
}
|
||||
964800709.128585 10.20.11.102 110/tcp {
|
||||
|
||||
}
|
||||
1184887724.39694 10.20.1.11 2222/tcp {
|
||||
|
||||
}
|
BIN
testing/btest/Traces/empty.trace
Normal file
BIN
testing/btest/Traces/empty.trace
Normal file
Binary file not shown.
BIN
testing/btest/Traces/web.trace
Normal file
BIN
testing/btest/Traces/web.trace
Normal file
Binary file not shown.
BIN
testing/btest/Traces/wikipedia.trace
Normal file
BIN
testing/btest/Traces/wikipedia.trace
Normal file
Binary file not shown.
BIN
testing/btest/Traces/workshop.trace1.trace
Normal file
BIN
testing/btest/Traces/workshop.trace1.trace
Normal file
Binary file not shown.
|
@ -1,4 +1,3 @@
|
|||
|
||||
[btest]
|
||||
TestDirs = logging language
|
||||
TmpDir = %(testbase)s/.tmp
|
||||
|
@ -11,3 +10,6 @@ BROPATH=`bash -c %(testbase)s/../../build/bro-path-dev`
|
|||
BRO_SEED_FILE=%(testbase)s/random.seed
|
||||
PATH=%(testbase)s/../../build/src:%(testbase)s/../../aux/btest:%(default_path)s
|
||||
TEST_DIFF_CANONIFIER=%(testbase)s/Scripts/diff-canonifier
|
||||
TRACES=%(testbase)s/Traces
|
||||
DIST=%(testbase)s/../..
|
||||
BUILD=%(testbase)s/../../build
|
||||
|
|
12
testing/btest/istate/broccoli.bro
Normal file
12
testing/btest/istate/broccoli.bro
Normal file
|
@ -0,0 +1,12 @@
|
|||
# @TEST-REQUIRES: grep -vq '#define BROv6' $BUILD/config.h
|
||||
# @TEST-REQUIRES: test -e $BUILD/aux/broccoli/src/libbroccoli.so
|
||||
#
|
||||
# @TEST-EXEC: btest-bg-run bro bro $DIST/aux/broccoli/test/broping-record.bro
|
||||
# @TEST-EXEC: sleep 1
|
||||
# @TEST-EXEC: btest-bg-run broccoli $BUILD/aux/broccoli/test/broping -r -c 5 127.0.0.1
|
||||
# @TEST-EXEC: sleep 1
|
||||
# @TEST-EXEC: btest-bg-wait -k 5
|
||||
# @TEST-EXEC: btest-diff bro/.stdout.log
|
||||
# @TEST-EXEC: btest-diff broccoli/.stdout.log
|
||||
|
||||
|
125
testing/btest/istate/events-ssl.bro
Normal file
125
testing/btest/istate/events-ssl.bro
Normal file
|
@ -0,0 +1,125 @@
|
|||
#
|
||||
# @TEST-EXEC: btest-bg-run sender bro -C -r $TRACES/web.trace --pseudo-realtime ../sender.bro
|
||||
# @TEST-EXEC: sleep 1
|
||||
# @TEST-EXEC: btest-bg-run receiver bro ../receiver.bro
|
||||
# @TEST-EXEC: sleep 1
|
||||
# @TEST-EXEC: btest-bg-wait -k 5
|
||||
#
|
||||
# @TEST-EXEC: btest-diff sender/conn.log
|
||||
# @TEST-EXEC: btest-diff sender/http.log
|
||||
# @TEST-EXEC: btest-diff receiver/conn.log
|
||||
# @TEST-EXEC: btest-diff receiver/http.log
|
||||
# @TEST-EXEC: cat receiver/http.log | sed 's/^\([^ ]* \)\{2\}//' >http.rec.log
|
||||
# @TEST-EXEC: cat sender/http.log | sed 's/^\([^ ]* \)\{2\}//' >http.snd.log
|
||||
# @TEST-EXEC: cmp http.rec.log http.snd.log
|
||||
#
|
||||
# @TEST-EXEC: bro -x receiver/events.bst | sed 's/127.0.0.1:[0-9]*//g' | grep -v Event.*remote_ >events
|
||||
# @TEST-EXEC: btest-diff events
|
||||
|
||||
@TEST-START-FILE sender.bro
|
||||
|
||||
@load tcp
|
||||
@load http-request
|
||||
@load http-reply
|
||||
@load http-header
|
||||
@load http-body
|
||||
@load http-abstract
|
||||
@load listen-ssl
|
||||
|
||||
@load capture-events
|
||||
|
||||
redef peer_description = "events-send";
|
||||
|
||||
# Make sure the HTTP connection really gets out.
|
||||
# (We still miss one final connection event because we shutdown before
|
||||
# it gets propagated but that's ok.)
|
||||
redef tcp_close_delay = 0secs;
|
||||
|
||||
redef ssl_ca_certificate = "../ca_cert.pem";
|
||||
redef ssl_private_key = "../bro.pem";
|
||||
redef ssl_passphrase = "my-password";
|
||||
|
||||
@TEST-END-FILE
|
||||
|
||||
#############
|
||||
|
||||
@TEST-START-FILE receiver.bro
|
||||
|
||||
@load tcp
|
||||
@load http-request
|
||||
@load http-reply
|
||||
@load http-header
|
||||
@load http-body
|
||||
@load http-abstract
|
||||
|
||||
@load capture-events
|
||||
@load remote
|
||||
|
||||
redef peer_description = "events-rcv";
|
||||
|
||||
redef Remote::destinations += {
|
||||
["foo"] = [$host = 127.0.0.1, $events = /.*/, $connect=T, $ssl=T]
|
||||
};
|
||||
|
||||
redef ssl_ca_certificate = "../ca_cert.pem";
|
||||
redef ssl_private_key = "../bro.pem";
|
||||
redef ssl_passphrase = "my-password";
|
||||
|
||||
@TEST-END-FILE
|
||||
|
||||
######
|
||||
|
||||
@TEST-START-FILE bro.pem
|
||||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIICXQIBAAKBgQDzkuad+VHAhymnpRqkcBTU6Z3OsgUNLnsqpaxPO1LdTuxiDY9N
|
||||
GuQJkFDMB/Dxu7slNepseRNu4yDDWVjcdL1TsPdSnNlnbFO3GBt0jQbYjEGLKhkt
|
||||
4dUFwjBAUfEVlklYtSWuzNAz+yVUIIyDOdpCXjj4DcuBSNh4ixA+fqmQ0QIDAQAB
|
||||
AoGAJWdZosi2lSosa2IfRUEw8cEuSp9rxypsH5BxdXlWsEV+Z1BNwTlv60gOIEbX
|
||||
6Uc65evxo9az9UNLtLPzwWbr67F90wyPXTpG7oE2eaKqbaOFuZ4/0rc8pASSZHcO
|
||||
bIVQOJbUMF+Zc3YnsNx6Ca682zQMRJrgh0745AutRkSARAECQQD9VmTAvzCqwDKG
|
||||
ylWmpTTTzN+ecqDMcZh9JmUZ8W/f3m4/i2wtwfrBTNn8ovATtCs5EWVG493tgXNM
|
||||
Ezgkmf65AkEA9iI89a6Ep2w5EPyYxBcm0ztbRC+vF3CSRoDgRPLwgS8kEsjhqPsE
|
||||
U5wQNyvCIyIssWC9VGiZmgMaSyom3cLW2QJAHR6KFDGluWrAJAgr0izZJqM87OyG
|
||||
GRnRikkYg+PhlRzvFTTEaXoLhZ58y/I6oDksYrHiL0TP5JXll8/5uxNMWQJBAJ2M
|
||||
oPSqNyNr9MNYzPiH0URYtDzbQPqCBj+28tdvol8uq6qSh0/BDa3vMbn++o++qlkI
|
||||
EWjcY6Xf4o7GdoZw11ECQQCyfgT2EY5HhzieGpA3MzrhATVnJlIuj8cvxFKjBriv
|
||||
OCc4cxVTrCW9FPxDOuLLgh7kxalvnkuKjjCmDeTGz5Fc
|
||||
-----END RSA PRIVATE KEY-----
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIICPTCCASWgAwIBAgIBATANBgkqhkiG9w0BAQUFADArMSkwJwYDVQQDEyBCcm8g
|
||||
Um9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0xMTAyMDgwNDIxMjhaFw0x
|
||||
MzAyMDcwNDIxMjhaMA4xDDAKBgNVBAMTA0JybzCBnzANBgkqhkiG9w0BAQEFAAOB
|
||||
jQAwgYkCgYEA85LmnflRwIcpp6UapHAU1OmdzrIFDS57KqWsTztS3U7sYg2PTRrk
|
||||
CZBQzAfw8bu7JTXqbHkTbuMgw1lY3HS9U7D3UpzZZ2xTtxgbdI0G2IxBiyoZLeHV
|
||||
BcIwQFHxFZZJWLUlrszQM/slVCCMgznaQl44+A3LgUjYeIsQPn6pkNECAwEAAaMN
|
||||
MAswCQYDVR0TBAIwADANBgkqhkiG9w0BAQUFAAOCAQEAnG+PiWgxp7cOBkgKgnxz
|
||||
JFK7J9f9fXn9vCOkzq//AitwP0A+SrBmccMtqOjjSLu7RCbmBQ9pbMwYPB4/py5f
|
||||
d8SfO1ngI8cY5uXCFUylNCWJ5P+uHBNwure7hRrQwswL7+8Elour8CnVfr2Ve/qO
|
||||
h2JL1fmoFcQ8KCKrNe01DsMCRq5jZ5AZI84ASiqNmzm4PwbSWiYLqZU+cemzW0xt
|
||||
tYMDlN4loJTQJX7o/6izOGWY0IEggoibI80T4dIGnnZqnhpMbASTtSyN6fTNMIWQ
|
||||
UQXfNM59GN1Q54UZ0HgXAgxb9jncF95rqPt9yHOUv5OUzLCdRsUWn4cEg9/rsHiu
|
||||
ZA==
|
||||
-----END CERTIFICATE-----
|
||||
@TEST-END-FILE
|
||||
|
||||
@TEST-START-FILE ca_cert.pem
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIC6TCCAdGgAwIBAgIJAKb0Por6917kMA0GCSqGSIb3DQEBBQUAMCsxKTAnBgNV
|
||||
BAMTIEJybyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTExMDIwODA0
|
||||
MTMyM1oXDTExMDMxMDA0MTMyM1owKzEpMCcGA1UEAxMgQnJvIFJvb3QgQ2VydGlm
|
||||
aWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
|
||||
AQDfGHPVBuKZa3Dp/V/ntkaNvHrgK/XH02mn5mLnt7eaeCEQKClL1bvQ/iGUrMEi
|
||||
CfQBe1zk6B8LnHgwkbOeAO2Kv7+K9rzn25nidAg/GU5o0gxfyqP1Sipfkr+/UrCH
|
||||
3fLnjSzZIwT5ypkXZS9UNgRzK/Xk+yAJs6tB5lU+wJofPJdmiH/Ros4ZZ5P/mNf3
|
||||
MhoM4Z5i3R3uEDtMCk5IT1zfXGq3FVOMA7jVYakrBccCbWhtyHdQH0i6U9wkfVEj
|
||||
o6l6PBPJxhWq0ySVnGdd+i4RCiwRBfeizl2gq0UlZ7/pXjJUZZICqYNPyZdntfMy
|
||||
2LUwvKA0y1RSpUrB4ZCkciZ7AgMBAAGjEDAOMAwGA1UdEwQFMAMBAf8wDQYJKoZI
|
||||
hvcNAQEFBQADggEBAIDoYd7ZQpLhm7ajvhqkYdrisxQfoQoCVt+oYm5jaLvzc/1V
|
||||
7sxeIatwk3kaowPcxUHHX7JfEPsf4xMGBCFp4Ce/vLXeeA2HBhBVww5sMKoAAtH6
|
||||
Y2sTNt2uTE/JUxQl6N+mqmv4y+g1X7uq2N/Eg8zYbgXF6En5L3XuEBdZbSf/AgBg
|
||||
d3m6m/N/dHLozZSjfwIQo0eygGEPW+kP7QFkve2L8g4l3k72mcAlCStlfcWDzKrh
|
||||
qPrFFujvGMD7MNUSuNbYtGVngDuYOYeHTEggq/kUDS1srMwmv/vQjxQfS9oeU4bG
|
||||
4sfSOkNotN+rwX7WQkVUq4IUOJ0q9fEPTosmsbc=
|
||||
-----END CERTIFICATE-----
|
||||
@TEST-END-FILE
|
||||
|
61
testing/btest/istate/events.bro
Normal file
61
testing/btest/istate/events.bro
Normal file
|
@ -0,0 +1,61 @@
|
|||
#
|
||||
# @TEST-EXEC: btest-bg-run sender bro -C -r $TRACES/web.trace --pseudo-realtime ../sender.bro
|
||||
# @TEST-EXEC: sleep 1
|
||||
# @TEST-EXEC: btest-bg-run receiver bro ../receiver.bro
|
||||
# @TEST-EXEC: sleep 1
|
||||
# @TEST-EXEC: btest-bg-wait -k 5
|
||||
#
|
||||
# @TEST-EXEC: btest-diff sender/conn.log
|
||||
# @TEST-EXEC: btest-diff sender/http.log
|
||||
# @TEST-EXEC: btest-diff receiver/conn.log
|
||||
# @TEST-EXEC: btest-diff receiver/http.log
|
||||
# @TEST-EXEC: cat receiver/http.log | sed 's/^\([^ ]* \)\{2\}//' >http.rec.log
|
||||
# @TEST-EXEC: cat sender/http.log | sed 's/^\([^ ]* \)\{2\}//' >http.snd.log
|
||||
# @TEST-EXEC: cmp http.rec.log http.snd.log
|
||||
#
|
||||
# @TEST-EXEC: bro -x receiver/events.bst | sed 's/127.0.0.1:[0-9]*//g' | grep -v Event.*remote_ >events
|
||||
# @TEST-EXEC: btest-diff events
|
||||
|
||||
@TEST-START-FILE sender.bro
|
||||
|
||||
@load tcp
|
||||
@load http-request
|
||||
@load http-reply
|
||||
@load http-header
|
||||
@load http-body
|
||||
@load http-abstract
|
||||
@load listen-clear
|
||||
|
||||
@load capture-events
|
||||
|
||||
redef peer_description = "events-send";
|
||||
|
||||
# Make sure the HTTP connection really gets out.
|
||||
# (We still miss one final connection event because we shutdown before
|
||||
# it gets propagated but that's ok.)
|
||||
redef tcp_close_delay = 0secs;
|
||||
|
||||
@TEST-END-FILE
|
||||
|
||||
#############
|
||||
|
||||
@TEST-START-FILE receiver.bro
|
||||
|
||||
@load tcp
|
||||
@load http-request
|
||||
@load http-reply
|
||||
@load http-header
|
||||
@load http-body
|
||||
@load http-abstract
|
||||
|
||||
@load capture-events
|
||||
@load remote
|
||||
|
||||
redef peer_description = "events-rcv";
|
||||
|
||||
redef Remote::destinations += {
|
||||
["foo"] = [$host = 127.0.0.1, $events = /.*/, $connect=T]
|
||||
};
|
||||
|
||||
|
||||
@TEST-END-FILE
|
113
testing/btest/istate/persistence.bro
Normal file
113
testing/btest/istate/persistence.bro
Normal file
|
@ -0,0 +1,113 @@
|
|||
#
|
||||
# @TEST-EXEC: bro -r $TRACES/empty.trace write.bro %INPUT
|
||||
# @TEST-EXEC: cp vars.log vars.write.log
|
||||
# @TEST-EXEC: bro read.bro %INPUT
|
||||
# @TEST-EXEC: cp vars.log vars.read.log
|
||||
# @TEST-EXEC: btest-diff vars.read.log
|
||||
# @TEST-EXEC: btest-diff vars.write.log
|
||||
# @TEST-EXEC: cmp vars.read.log vars.write.log
|
||||
|
||||
### Common code for reader and writer.
|
||||
|
||||
event bro_done()
|
||||
{
|
||||
local out = open("vars.log");
|
||||
print out, foo1;
|
||||
print out, foo2;
|
||||
print out, foo3;
|
||||
print out, foo4;
|
||||
print out, foo5;
|
||||
print out, foo6;
|
||||
print out, foo7;
|
||||
print out, foo8;
|
||||
print out, foo9;
|
||||
print out, foo10;
|
||||
print out, foo11;
|
||||
print out, foo12;
|
||||
print out, foo13;
|
||||
print out, foo14;
|
||||
print out, foo15;
|
||||
print out, foo16;
|
||||
print out, foo17;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@TEST-START-FILE read.bro
|
||||
|
||||
global foo1: count &persistent &synchronized;
|
||||
global foo2: int &persistent &synchronized;
|
||||
global foo3: string &persistent &synchronized;
|
||||
global foo4: addr &persistent &synchronized;
|
||||
global foo5: subnet &persistent &synchronized;
|
||||
global foo6: double &persistent &synchronized;
|
||||
global foo7: net &persistent &synchronized;
|
||||
global foo8: interval &persistent &synchronized;
|
||||
global foo9: table[count] of string &persistent &synchronized;
|
||||
global foo10: file &persistent &synchronized;
|
||||
global foo11: pattern &persistent &synchronized;
|
||||
global foo12: set[count] &persistent &synchronized;
|
||||
global foo13: table[count, string] of count &persistent &synchronized;
|
||||
global foo14: table[count] of pattern &persistent &synchronized;
|
||||
global foo15: port &persistent &synchronized;
|
||||
global foo16: vector of count &persistent &synchronized;
|
||||
|
||||
type type1: record {
|
||||
a: string;
|
||||
b: count &default=42;
|
||||
c: double &optional;
|
||||
};
|
||||
|
||||
type type2: record {
|
||||
a: string;
|
||||
b: type1;
|
||||
c: type1;
|
||||
d: double;
|
||||
};
|
||||
|
||||
global foo17: type2 &persistent &synchronized;
|
||||
|
||||
@TEST-END-FILE
|
||||
|
||||
@TEST-START-FILE write.bro
|
||||
|
||||
global foo1 = 42 &persistent &synchronized;
|
||||
global foo2 = -42 &persistent &synchronized;
|
||||
global foo3 = "Hallihallo" &persistent &synchronized;
|
||||
global foo4 = 1.2.3.4 &persistent &synchronized;
|
||||
global foo5 = 1.2.0.0/16 &persistent &synchronized;
|
||||
global foo6 = 3.14 &persistent &synchronized;
|
||||
global foo7 = 131.159. &persistent &synchronized;
|
||||
global foo8 = 42 secs &persistent &synchronized;
|
||||
global foo9 = { [1] = "qwerty", [2] = "uiop" } &persistent &synchronized;
|
||||
global foo10 = open("test") &persistent &synchronized;
|
||||
global foo11 = /12345/ &persistent &synchronized;
|
||||
global foo12 = { 1,2,3,4,5 } &persistent &synchronized;
|
||||
global foo13 = { [1,"ABC"] = 101, [2,"DEF"] = 102, [3,"GHI"] = 103 } &persistent &synchronized;
|
||||
global foo14 = { [12345] = foo11, [12346] = foo11 } &persistent &synchronized;
|
||||
global foo15 = 42/udp &persistent &synchronized;
|
||||
global foo16: vector of count = [1,2,3] &persistent &synchronized;
|
||||
|
||||
type type1: record {
|
||||
a: string;
|
||||
b: count &default=42;
|
||||
c: double &optional;
|
||||
};
|
||||
|
||||
type type2: record {
|
||||
a: string;
|
||||
b: type1;
|
||||
c: type1;
|
||||
d: double;
|
||||
};
|
||||
|
||||
global foo17: type2 = [
|
||||
$a = "yuyuyu",
|
||||
$b = [$a="rec1", $b=100, $c=1.24],
|
||||
$c = [$a="rec2", $b=200, $c=2.24],
|
||||
$d = 7.77
|
||||
] &persistent &synchronized;
|
||||
|
||||
@TEST-END-FILE
|
13
testing/btest/istate/pybroccoli.py
Normal file
13
testing/btest/istate/pybroccoli.py
Normal file
|
@ -0,0 +1,13 @@
|
|||
# @TEST-REQUIRES: grep -vq '#define BROv6' $BUILD/config.h
|
||||
# @TEST-REQUIRES: test -e $BUILD/aux/broccoli/src/libbroccoli.so
|
||||
# @TEST-REQUIRES: test -e $BUILD/aux/broccoli/bindings/broccoli-python/_broccoli_intern.so
|
||||
#
|
||||
# @TEST-EXEC: btest-bg-run bro bro $DIST/aux/broccoli/bindings/broccoli-python/tests/test.bro
|
||||
# @TEST-EXEC: sleep 1
|
||||
# @TEST-EXEC: btest-bg-run python python $DIST/aux/broccoli/bindings/broccoli-python/tests/test.py
|
||||
# @TEST-EXEC: sleep 1
|
||||
# @TEST-EXEC: btest-bg-wait -k 5
|
||||
# @TEST-EXEC: btest-diff bro/.stdout.log
|
||||
# @TEST-EXEC: btest-diff broccoli/.stdout.log
|
||||
|
||||
|
164
testing/btest/istate/sync.bro
Normal file
164
testing/btest/istate/sync.bro
Normal file
|
@ -0,0 +1,164 @@
|
|||
#
|
||||
# @TEST-EXEC: btest-bg-run sender bro %INPUT ../sender.bro
|
||||
# @TEST-EXEC: sleep 1
|
||||
# @TEST-EXEC: btest-bg-run receiver bro %INPUT ../receiver.bro
|
||||
# @TEST-EXEC: sleep 1
|
||||
# @TEST-EXEC: btest-bg-wait -k 5
|
||||
#
|
||||
# @TEST-EXEC: btest-diff sender/vars.log
|
||||
# @TEST-EXEC: btest-diff receiver/vars.log
|
||||
# @TEST-EXEC: cmp sender/vars.log receiver/vars.log
|
||||
|
||||
### Common code for sender and receiver.
|
||||
|
||||
# Instantiate variables.
|
||||
|
||||
global foo1 = 42 &persistent &synchronized;
|
||||
global foo2 = -42 &persistent &synchronized;
|
||||
global foo3 = "Hallihallo" &persistent &synchronized;
|
||||
global foo4 = 1.2.3.4 &persistent &synchronized;
|
||||
global foo5 = 1.2.0.0/16 &persistent &synchronized;
|
||||
global foo6 = 3.14 &persistent &synchronized;
|
||||
global foo7 = 131.159. &persistent &synchronized;
|
||||
global foo8 = 42 secs &persistent &synchronized;
|
||||
global foo9 = { [1] = "qwerty", [2] = "uiop" } &persistent &synchronized;
|
||||
global foo10 = open("test") &persistent &synchronized;
|
||||
global foo11 = /12345/ &persistent &synchronized;
|
||||
global foo12 = { 1,2,3,4,5 } &persistent &synchronized;
|
||||
global foo13 = { [1,"ABC"] = 101, [2,"DEF"] = 102, [3,"GHI"] = 103 } &persistent &synchronized;
|
||||
global foo14 = { [12345] = foo11, [12346] = foo11 } &persistent &synchronized;
|
||||
global foo15 = 42/udp &persistent &synchronized;
|
||||
global foo16: vector of count = [1,2,3] &persistent &synchronized;
|
||||
|
||||
type type1: record {
|
||||
a: string;
|
||||
b: count &default=42;
|
||||
c: double &optional;
|
||||
};
|
||||
|
||||
type type2: record {
|
||||
a: string;
|
||||
b: type1;
|
||||
c: type1;
|
||||
d: double;
|
||||
};
|
||||
|
||||
global foo17: type2 = [
|
||||
$a = "yuyuyu",
|
||||
$b = [$a="rec1", $b=100, $c=1.24],
|
||||
$c = [$a="rec2", $b=200, $c=2.24],
|
||||
$d = 7.77
|
||||
] &persistent &synchronized;
|
||||
|
||||
# Print variables.
|
||||
|
||||
event bro_done()
|
||||
{
|
||||
local out = open("vars.log");
|
||||
print out, foo1;
|
||||
print out, foo2;
|
||||
print out, foo3;
|
||||
print out, foo4;
|
||||
print out, foo5;
|
||||
print out, foo6;
|
||||
print out, foo7;
|
||||
print out, foo8;
|
||||
print out, foo9;
|
||||
print out, foo10;
|
||||
print out, foo11;
|
||||
print out, foo12;
|
||||
print out, foo13;
|
||||
print out, foo14;
|
||||
print out, foo15;
|
||||
print out, foo16;
|
||||
print out, foo17;
|
||||
}
|
||||
|
||||
|
||||
@TEST-START-FILE sender.bro
|
||||
|
||||
# Perform modifications on variables.
|
||||
|
||||
function modify()
|
||||
{
|
||||
foo1 = 420;
|
||||
++foo1;
|
||||
|
||||
--foo2;
|
||||
|
||||
foo3 = "Jodel";
|
||||
|
||||
foo4 = 4.3.2.1;
|
||||
|
||||
foo5 = 4.0.0.0/8;
|
||||
|
||||
foo6 = 21;
|
||||
|
||||
foo7 = 192.150.186;
|
||||
|
||||
foo9[3] = "asdfg1";
|
||||
foo9[1] = "asdfg2";
|
||||
delete foo9[2];
|
||||
|
||||
foo10 = open("test2");
|
||||
|
||||
foo11 = /abbcdefgh/;
|
||||
|
||||
add foo12[6];
|
||||
delete foo12[1];
|
||||
|
||||
foo13[4,"JKL"] = 104;
|
||||
delete foo13[1,"ABC"];
|
||||
++foo13[2,"DEF"];
|
||||
|
||||
foo14[6767] = /QWERTZ/;
|
||||
|
||||
foo15 = 6667/tcp;
|
||||
|
||||
foo16[4] = 4;
|
||||
foo16[2] = 20;
|
||||
++foo16[1];
|
||||
|
||||
local x: type1;
|
||||
x$a = "pop";
|
||||
++x$b;
|
||||
x$c = 9.999;
|
||||
foo17$a = "zxzxzx";
|
||||
foo17$b = x;
|
||||
foo17$c$a = "IOIOI";
|
||||
++foo17$c$b;
|
||||
foo17$c$c = 612.2;
|
||||
foo17$d = 6.6666;
|
||||
|
||||
foo2 = 1234567;
|
||||
|
||||
}
|
||||
|
||||
@load listen-clear
|
||||
|
||||
event remote_connection_handshake_done(p: event_peer)
|
||||
{
|
||||
modify();
|
||||
terminate_communication();
|
||||
}
|
||||
|
||||
redef Remote::destinations += {
|
||||
["foo"] = [$host = 127.0.0.1, $sync=T]
|
||||
};
|
||||
|
||||
@TEST-END-FILE
|
||||
|
||||
#############
|
||||
|
||||
@TEST-START-FILE receiver.bro
|
||||
|
||||
@load capture-events
|
||||
@load remote
|
||||
|
||||
|
||||
redef Remote::destinations += {
|
||||
["foo"] = [$host = 127.0.0.1, $events = /.*/, $connect=T, $sync=T]
|
||||
};
|
||||
|
||||
|
||||
@TEST-END-FILE
|
19
testing/btest/language/rec-table-default.bro
Normal file
19
testing/btest/language/rec-table-default.bro
Normal file
|
@ -0,0 +1,19 @@
|
|||
|
||||
# @TEST-EXEC: bro %INPUT >output 2>&1
|
||||
# @TEST-EXEC: btest-diff output
|
||||
|
||||
type X: record {
|
||||
a: table[string] of bool &default=table( ["foo"] = T );
|
||||
b: table[string] of bool &default=table();
|
||||
c: set[string] &default=set("A", "B", "C");
|
||||
d: set[string] &default=set();
|
||||
};
|
||||
|
||||
global x: X;
|
||||
global y: table[string] of bool &default=T;
|
||||
|
||||
print x$a;
|
||||
print x$b;
|
||||
print x$c;
|
||||
print x$d;
|
||||
|
6
testing/btest/policy/known-hosts-test
Normal file
6
testing/btest/policy/known-hosts-test
Normal file
|
@ -0,0 +1,6 @@
|
|||
|
||||
@TEST-EXEC: bro -r $TRACES/wikipedia.trace known-hosts
|
||||
|
||||
@TEST-EXEC: btest-diff KNOWN_HOSTS
|
||||
@TEST-EXEC: btest-diff .stderr
|
||||
@TEST-EXEC: btest-diff .stdout
|
24
testing/btest/policy/known-services-test.bro
Normal file
24
testing/btest/policy/known-services-test.bro
Normal file
|
@ -0,0 +1,24 @@
|
|||
|
||||
# Generate some output
|
||||
# @TEST-EXEC: bro -r $TRACES/workshop.trace1.trace %INPUT tcp
|
||||
|
||||
|
||||
# Verify the log file, and stderr/out match the Baseline
|
||||
# @TEST-EXEC: btest-diff KNOWN_SERVICES
|
||||
# @TEST-EXEC: btest-diff .stderr
|
||||
# @TEST-EXEC: btest-diff .stdout
|
||||
|
||||
|
||||
# Load the script we're here to test
|
||||
@load known-services
|
||||
|
||||
# Make some changes to how it runs
|
||||
export {
|
||||
# Log everything, so we get some output
|
||||
redef KnownServices::logged_hosts=Enabled;
|
||||
}
|
||||
|
||||
# If necessary, can take setup action here as well
|
||||
event bro_init()
|
||||
{
|
||||
}
|
|
@ -20,9 +20,9 @@ file "test" of string
|
|||
2
|
||||
}
|
||||
{
|
||||
[3, GHI] = 103,
|
||||
[2, DEF] = 102,
|
||||
[1, ABC] = 101
|
||||
[1, ABC] = 101,
|
||||
[3, GHI] = 103
|
||||
}
|
||||
{
|
||||
[12345] = /^?(12345)$?/,
|
||||
|
|
|
@ -20,9 +20,9 @@ file "test" of string
|
|||
2
|
||||
}
|
||||
{
|
||||
[3, GHI] = 103,
|
||||
[2, DEF] = 102,
|
||||
[1, ABC] = 101
|
||||
[1, ABC] = 101,
|
||||
[3, GHI] = 103
|
||||
}
|
||||
{
|
||||
[12345] = /^?(12345)$?/,
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
xxxxxxxxxx.xxxxxx [info] [parent] pipe's socket buffer size is 8192, setting to 1048576
|
||||
xxxxxxxxxx.xxxxxx [info] [parent] raised pipe's socket buffer size from 126K to 1024K
|
||||
xxxxxxxxxx.xxxxxx [info] [parent] communication started, parent
|
||||
xxxxxxxxxx.xxxxxx [info] [parent] [#1/127.0.0.1:47757] added peer
|
||||
xxxxxxxxxx.xxxxxx [info] [child] [#1/127.0.0.1:47757] connected
|
||||
|
|
|
@ -20,9 +20,9 @@ file "test2" of string
|
|||
2
|
||||
}
|
||||
{
|
||||
[3, GHI] = 103,
|
||||
[4, JKL] = 104,
|
||||
[2, DEF] = 103
|
||||
[2, DEF] = 103,
|
||||
[3, GHI] = 103
|
||||
}
|
||||
{
|
||||
[12345] = /^?(12345)$?/,
|
||||
|
|
|
@ -20,9 +20,9 @@ file "test2" of string
|
|||
2
|
||||
}
|
||||
{
|
||||
[3, GHI] = 103,
|
||||
[4, JKL] = 104,
|
||||
[2, DEF] = 103
|
||||
[2, DEF] = 103,
|
||||
[3, GHI] = 103
|
||||
}
|
||||
{
|
||||
[12345] = /^?(12345)$?/,
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#! /usr/bin/env python
|
||||
#
|
||||
#
|
||||
# Tests persistence.
|
||||
#
|
||||
# $Id: istate.py,v 1.1.2.4 2005/10/11 22:31:42 sommer Exp $
|
||||
|
@ -14,82 +14,82 @@ import subprocess
|
|||
import tests
|
||||
|
||||
optparser = optparse.OptionParser( usage = "%prog [options]", version = "0.1" )
|
||||
optparser.add_option( "-s", "--show-diff", action = "store_true", dest = "showdiff",
|
||||
optparser.add_option( "-s", "--show-diff", action = "store_true", dest = "showdiff",
|
||||
default = False, help = "show diffs of mismatches" )
|
||||
optparser.add_option( "-b", "--new-base", action = "store_true", dest = "newbase",
|
||||
optparser.add_option( "-b", "--new-base", action = "store_true", dest = "newbase",
|
||||
default = False, help = "create new baseline" )
|
||||
optparser.add_option( "-d", "--debug", action = "store_true", dest = "debug",
|
||||
optparser.add_option( "-d", "--debug", action = "store_true", dest = "debug",
|
||||
default = False, help = "enable debug output" )
|
||||
optparser.add_option( "-t", "--set", action = "store", type = "string", dest = "set",
|
||||
optparser.add_option( "-t", "--set", action = "store", type = "string", dest = "set",
|
||||
default = None, help = "only do given test set" )
|
||||
|
||||
|
||||
|
||||
( tests.Options, args ) = optparser.parse_args()
|
||||
|
||||
if len(args) != 0:
|
||||
optparser.error( "Wrong number of arguments" )
|
||||
|
||||
##########################################
|
||||
##########################################
|
||||
# Write persistent data and read it back.
|
||||
##########################################
|
||||
|
||||
if tests.testSet("persistence"):
|
||||
|
||||
tests.spawnBro("persistence-write",
|
||||
["-r", os.path.join(tests.Traces, "empty.trace"),
|
||||
tests.spawnBro("persistence-write",
|
||||
["-r", os.path.join(tests.Traces, "empty.trace"),
|
||||
os.path.join(tests.Scripts, "vars-init.bro"),
|
||||
os.path.join(tests.Scripts, "vars-print.bro")])
|
||||
tests.waitProc("persistence-write")
|
||||
tests.finishTest("persistence-write", ["stdout.log", "stderr.log", "vars.log"])
|
||||
|
||||
tests.spawnBro("persistence-read",
|
||||
tests.spawnBro("persistence-read",
|
||||
[os.path.join(tests.Scripts, "vars-declare.bro"),
|
||||
os.path.join(tests.Scripts, "vars-print.bro")],
|
||||
os.path.join(tests.Scripts, "vars-print.bro")],
|
||||
copy=[os.path.join(tests.workDir("persistence-write"), ".state")])
|
||||
tests.waitProc("persistence-read")
|
||||
tests.finishTest("persistence-read", ["stdout.log", "stderr.log", "vars.log"])
|
||||
|
||||
tests.compareFiles("persistence-write", "persistence-read", ["vars.log"])
|
||||
|
||||
##########################################
|
||||
##########################################
|
||||
# Exchange events (clear-text).
|
||||
#
|
||||
# The used trace contains two connections separated by a silence of a
|
||||
# couple of seconds. We start the processes so that the events for the
|
||||
# The used trace contains two connections separated by a silence of a
|
||||
# couple of seconds. We start the processes so that the events for the
|
||||
# *second* one (which is a full HTTP connection) are exchanged.
|
||||
##########################################
|
||||
##########################################
|
||||
|
||||
if tests.testSet("events"):
|
||||
|
||||
tests.spawnBro("events-send",
|
||||
["-r", os.path.join(tests.Scripts, os.path.join(tests.Traces, "web.trace")),
|
||||
"--pseudo-realtime",
|
||||
tests.spawnBro("events-send",
|
||||
["-r", os.path.join(tests.Scripts, os.path.join(tests.Traces, "web.trace")),
|
||||
"--pseudo-realtime",
|
||||
"-C",
|
||||
os.path.join(tests.Scripts, "events-send.bro")])
|
||||
time.sleep(2)
|
||||
tests.spawnBro("events-rcv",
|
||||
tests.spawnBro("events-rcv",
|
||||
[os.path.join(tests.Scripts, "events-rcv.bro")])
|
||||
tests.waitProc("events-send")
|
||||
tests.killProc("events-rcv")
|
||||
tests.finishTest("events-send", ["stdout.log", "stderr.log", "http.log", "conn.log"], ignoreTime=True)
|
||||
tests.finishTest("events-rcv", ["stdout.log", "stderr.log", "http.log", "conn.log"], ignoreTime=True)
|
||||
|
||||
tests.spawnBro("events-display",
|
||||
tests.spawnBro("events-display",
|
||||
["-x", os.path.join(tests.workDir("events-rcv"), "events.bst")])
|
||||
tests.waitProc("events-display")
|
||||
tests.finishTest("events-display", ["stdout.log"], ignoreTime=True, sort=True, delete=['127.0.0.1:[0-9]*',"Event.*remote_.*"])
|
||||
|
||||
tests.compareFiles("events-send", "events-rcv", ["http.log"], ignoreTime=True, ignoreSessionID=True)
|
||||
|
||||
##########################################
|
||||
##########################################
|
||||
# Exchange synchronized state
|
||||
##########################################
|
||||
##########################################
|
||||
|
||||
if tests.testSet("sync"):
|
||||
|
||||
tests.spawnBro("sync-send",
|
||||
tests.spawnBro("sync-send",
|
||||
[os.path.join(tests.Scripts, "vars-sync-send.bro")])
|
||||
tests.spawnBro("sync-rcv",
|
||||
tests.spawnBro("sync-rcv",
|
||||
[os.path.join(tests.Scripts, "vars-sync-rcv.bro")])
|
||||
tests.waitProc("sync-send")
|
||||
time.sleep(1)
|
||||
|
@ -99,10 +99,10 @@ if tests.testSet("sync"):
|
|||
|
||||
tests.compareFiles("sync-send", "sync-rcv", ["vars.log"], ignoreTime=True)
|
||||
|
||||
# Old version
|
||||
# tests.spawnBro("sync-send",
|
||||
# ["-r", os.path.join(tests.Scripts, os.path.join(tests.Traces, "web.trace")),
|
||||
# "--pseudo-realtime",
|
||||
# Old version
|
||||
# tests.spawnBro("sync-send",
|
||||
# ["-r", os.path.join(tests.Scripts, os.path.join(tests.Traces, "web.trace")),
|
||||
# "--pseudo-realtime",
|
||||
# "-C",
|
||||
# os.path.join(tests.Scripts, "vars-sync-send.bro")])
|
||||
|
||||
|
@ -113,22 +113,22 @@ if tests.testSet("sync"):
|
|||
|
||||
if tests.testSet("broccoli"):
|
||||
|
||||
broctest = os.path.join(tests.Bro, "aux/broccoli/test")
|
||||
broclib = os.path.join(tests.Bro, "aux/broccoli/src/.libs")
|
||||
broping = os.path.join(broctest, "broping")
|
||||
broctest = os.path.join(tests.BroBase, "aux/broccoli/test")
|
||||
broclib = os.path.join(tests.BroBase, "build/aux/broccoli/src/")
|
||||
broping = os.path.join(tests.BroBase, "build/aux/broccoli/test/broping")
|
||||
|
||||
brocpy = os.path.join(tests.Bro, "aux/broccoli/bindings/python")
|
||||
brocpy = os.path.join(tests.BroBase, "build/aux/broccoli/bindings/broccoli-python")
|
||||
|
||||
broccoli = True
|
||||
|
||||
|
||||
# Test if Broccoli was compiled.
|
||||
if not os.path.exists(broping):
|
||||
print " Broccoli was not compiled, skipping tests."
|
||||
broccoli = False
|
||||
|
||||
# Test if this is a IPv6 Bro.
|
||||
|
||||
# Test if this is a IPv6 Bro.
|
||||
if broccoli:
|
||||
v6 = subprocess.call(["grep", "-q", "#define BROv6", os.path.join(tests.Bro, "config.h")])
|
||||
v6 = subprocess.call(["grep", "-q", "#define BROv6", os.path.join(tests.BroBase, "build/config.h")])
|
||||
if v6 == 0:
|
||||
print " Bro built with IPv6 support not compatible with Broccoli, skipping tests."
|
||||
broccoli = False
|
||||
|
@ -136,21 +136,21 @@ if tests.testSet("broccoli"):
|
|||
if broccoli:
|
||||
tests.spawnBro("bro-ping", [os.path.join(broctest, "broping-record.bro")])
|
||||
time.sleep(1)
|
||||
tests.spawnProc("broccoli-ping",
|
||||
[broping,
|
||||
"-r",
|
||||
"-c", "5",
|
||||
tests.spawnProc("broccoli-ping",
|
||||
[broping,
|
||||
"-r",
|
||||
"-c", "5",
|
||||
"127.0.0.1"])
|
||||
tests.waitProc("broccoli-ping")
|
||||
tests.killProc("bro-ping")
|
||||
|
||||
tests.finishTest("bro-ping", ["stdout.log", "stderr.log", "remote.log"],
|
||||
ignoreTime=True, delete=["127.0.0.1:[0-9]*", "pid.*pid.*",
|
||||
".*Resource temporarily unavailable.*", ".*connection closed.*",
|
||||
|
||||
tests.finishTest("bro-ping", ["stdout.log", "stderr.log", "remote.log"],
|
||||
ignoreTime=True, delete=["127.0.0.1:[0-9]*", "pid.*pid.*",
|
||||
".*Resource temporarily unavailable.*", ".*connection closed.*",
|
||||
".*peer disconnected.*"])
|
||||
tests.finishTest("broccoli-ping", ["stdout.log", "stderr.log"],
|
||||
delete=["time=.* s$"])
|
||||
|
||||
|
||||
# Test if Python binding are installed.
|
||||
sopath = subprocess.Popen(["find", brocpy, "-name", "_broccoli_intern.so"], stdout=subprocess.PIPE).communicate()[0]
|
||||
if sopath != "":
|
||||
|
@ -158,7 +158,7 @@ if tests.testSet("broccoli"):
|
|||
os.environ["LD_LIBRARY_PATH"] = broclib
|
||||
os.environ["DYLD_LIBRARY_PATH"] = broclib
|
||||
os.environ["PYTHONPATH"] = os.path.dirname(sopath)
|
||||
|
||||
|
||||
tests.spawnBro("python-bro", [os.path.join(brocpy, "tests/test.bro")])
|
||||
time.sleep(1)
|
||||
tests.spawnProc("python-script", [os.path.join(brocpy, "tests/test.py")])
|
||||
|
@ -169,6 +169,6 @@ if tests.testSet("broccoli"):
|
|||
else:
|
||||
print " Python bindings not built, skipping test."
|
||||
print " (To build: cd %s && python setup.py build)" % brocpy
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -13,11 +13,11 @@ import subprocess
|
|||
Testing = os.path.abspath(".")
|
||||
|
||||
# Path to top-level Bro directory.
|
||||
if os.path.exists("../../src/bro"):
|
||||
Bro = os.path.abspath("../..")
|
||||
if os.path.exists("../../build/src/bro"):
|
||||
BroBase = os.path.abspath("../..")
|
||||
else:
|
||||
Bro = os.path.abspath("../../bro")
|
||||
|
||||
error("cannot find build directory")
|
||||
|
||||
# Path where tmp files are created.
|
||||
Tmp = os.path.join(Testing, "tmp")
|
||||
|
||||
|
@ -32,7 +32,7 @@ Traces = os.path.join(Testing, "traces")
|
|||
|
||||
# Where the base files to compare against are stored.
|
||||
Base = os.path.join(os.getcwd(), "./base")
|
||||
|
||||
|
||||
# Process ID of all processes we've spawned, indexed by textual tag *and* pid.
|
||||
Running = {}
|
||||
|
||||
|
@ -46,40 +46,40 @@ def error(str):
|
|||
print >>sys.stderr, "Error:", str
|
||||
sys.exit(1)
|
||||
|
||||
def debug(str):
|
||||
def debug(str):
|
||||
if Options.debug:
|
||||
print >>sys.stderr, "Debug:", str
|
||||
|
||||
def log(str):
|
||||
def log(str):
|
||||
print >>sys.stderr, str
|
||||
|
||||
# Returns full path of given process' working directory.
|
||||
def workDir(tag):
|
||||
def workDir(tag):
|
||||
return os.path.join(Tmp, tag)
|
||||
|
||||
# Intializes work dir for given process.
|
||||
def initWorkDir(tag):
|
||||
|
||||
|
||||
try:
|
||||
os.mkdir(Tmp)
|
||||
except OSError, e:
|
||||
if e.errno != errno.EEXIST:
|
||||
raise
|
||||
|
||||
|
||||
os.system("rm -rf " + workDir(tag))
|
||||
os.mkdir(workDir(tag))
|
||||
|
||||
# Spawns process identified by the given tag. Enters process into RunningBro.
|
||||
def spawnProc(tag, cmdline, copy=[]):
|
||||
def spawnProc(tag, cmdline, copy=[]):
|
||||
initWorkDir(tag)
|
||||
os.chdir(workDir(tag))
|
||||
|
||||
for i in copy:
|
||||
debug("Copying %s into workdir of %s" % (i, tag))
|
||||
os.system("cp -r %s %s" % (i, workDir(tag)))
|
||||
|
||||
|
||||
debug("Spawning '%s' as %s" % (" ".join(cmdline), tag))
|
||||
|
||||
|
||||
saved_stdin = os.dup(0)
|
||||
saved_stdout = os.dup(1)
|
||||
saved_stderr = os.dup(2)
|
||||
|
@ -93,31 +93,34 @@ def spawnProc(tag, cmdline, copy=[]):
|
|||
os.dup2(saved_stdin, 0)
|
||||
os.dup2(saved_stdout, 1)
|
||||
os.dup2(saved_stderr, 2)
|
||||
|
||||
|
||||
Running[tag] = pid
|
||||
Running[pid] = tag
|
||||
|
||||
# Spaws a Bro process.
|
||||
# Spaws a Bro process.
|
||||
def spawnBro(tag, args, copy=[]):
|
||||
os.putenv("BROPATH", os.path.join(Bro, "policy") + ":" + Scripts)
|
||||
bropath = os.path.join(BroBase, "policy")
|
||||
bropath += ":" + os.path.join(BroBase, "build/src")
|
||||
|
||||
os.putenv("BROPATH", bropath + ":" + Scripts)
|
||||
os.unsetenv("BRO_LOG_SUFFIX")
|
||||
args += ["--load-seeds", BroSeed, "-B", "state,comm"]
|
||||
spawnProc(tag, [os.path.join(Bro, "src/bro")] + args, copy=copy)
|
||||
|
||||
# Examines a process' exit code.
|
||||
def parseExitCode(tag, result):
|
||||
spawnProc(tag, [os.path.join(BroBase, "build/src/bro")] + args, copy=copy)
|
||||
|
||||
# Examines a process' exit code.
|
||||
def parseExitCode(tag, result):
|
||||
if os.WCOREDUMP(result):
|
||||
error("process %s core dumped." % tag)
|
||||
|
||||
if os.WIFSIGNALED(result):
|
||||
error("process %s got signal %d." % (tag, os.WTERMSIG(result)))
|
||||
|
||||
|
||||
if not os.WIFEXITED(result):
|
||||
error("process %s exited abnormally (%d)." % (tag, result))
|
||||
|
||||
result = os.WEXITSTATUS(result)
|
||||
debug("process %s exited with %d" % (tag, result))
|
||||
|
||||
debug("process %s exited with %d" % (tag, result))
|
||||
|
||||
return result
|
||||
|
||||
# Waits for process to finish.
|
||||
|
@ -126,7 +129,7 @@ def waitProc(tag):
|
|||
result = parseExitCode(tag, result)
|
||||
if result != 0:
|
||||
error("Execution of %s failed." % tag)
|
||||
|
||||
|
||||
del Running[pid]
|
||||
del Running[tag]
|
||||
|
||||
|
@ -147,43 +150,43 @@ def killProc(tag):
|
|||
parseExitCode(tag, result)
|
||||
del Running[pid]
|
||||
del Running[tag]
|
||||
|
||||
|
||||
# Cleans up temporary stuff
|
||||
def cleanup():
|
||||
os.system("rm -rf " + Tmp)
|
||||
|
||||
# Canonicalizes file content for diffing.
|
||||
def canonicalizeFile(file, ignoreTime, ignoreSessionID, sort, delete):
|
||||
|
||||
|
||||
cmd = []
|
||||
|
||||
|
||||
if delete:
|
||||
for i in delete:
|
||||
cmd += ["sed 's/%s//g' | grep -v '^$'" % i]
|
||||
|
||||
|
||||
if ignoreTime:
|
||||
cmd += ["sed 's/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]\.[0-9][0-9]\{0,6\}/xxxxxxxxxx.xxxxxx/g'"]
|
||||
|
||||
if ignoreSessionID:
|
||||
# A session is either "%1" or "%my-peer-description-1"
|
||||
cmd += ["sed 's/%\([^ ]*-\)\{0,1\}[0-9][0-9]*/%XXX/g'"]
|
||||
|
||||
|
||||
if sort:
|
||||
cmd += ["LC_ALL=c sort"]
|
||||
|
||||
|
||||
if not cmd:
|
||||
return
|
||||
|
||||
|
||||
tmp = file + ".tmp"
|
||||
cmd = "cat %s | %s >%s" % (file, " | ".join(cmd), tmp)
|
||||
cmd = "cat %s | %s >%s" % (file, " | ".join(cmd), tmp)
|
||||
|
||||
debug("Canonicalizing '%s'" % cmd)
|
||||
os.system(cmd)
|
||||
os.system("mv %s %s" % (tmp, file))
|
||||
|
||||
# Diffs the two files, If mismatch, prints "FAILED" and returns true.
|
||||
# Diffs the two files, If mismatch, prints "FAILED" and returns true.
|
||||
def diff(file1, file2):
|
||||
|
||||
|
||||
quiet = ">/dev/null"
|
||||
if Options.showdiff:
|
||||
quiet = ""
|
||||
|
@ -192,37 +195,37 @@ def diff(file1, file2):
|
|||
if not os.path.exists(f):
|
||||
print "FAILED (%s does not exist)" % f
|
||||
return False
|
||||
|
||||
|
||||
diff = "diff -u %s %s %s" % (file1, file2, quiet)
|
||||
|
||||
|
||||
debug("Executing '%s'" % diff)
|
||||
result = os.system(diff)
|
||||
|
||||
|
||||
if os.WEXITSTATUS(result) != 0:
|
||||
print "FAILED"
|
||||
return False
|
||||
|
||||
|
||||
return True
|
||||
|
||||
|
||||
# Compares files of process against base version. Returns false if mismatch found.
|
||||
def checkFiles(tag, files, ignoreTime, sort, delete):
|
||||
base = os.path.join(Base, tag)
|
||||
work = workDir(tag)
|
||||
|
||||
|
||||
print " Checking %s..." % tag,
|
||||
|
||||
|
||||
failed = False
|
||||
|
||||
|
||||
for file in files:
|
||||
oldfile = os.path.join(base, file)
|
||||
newfile = os.path.join(work, file)
|
||||
|
||||
canonicalizeFile(newfile, ignoreTime, False, sort, delete)
|
||||
|
||||
|
||||
if not diff(oldfile, newfile):
|
||||
failed = True
|
||||
break
|
||||
|
||||
|
||||
if not failed:
|
||||
print "ok"
|
||||
else:
|
||||
|
@ -234,25 +237,25 @@ def compareFiles(tag1, tag2, files, ignoreTime=False, ignoreSessionID=False, sor
|
|||
work2 = workDir(tag2)
|
||||
|
||||
print " Comparing %s with %s..." % (tag1, tag2),
|
||||
|
||||
|
||||
failed = False
|
||||
|
||||
|
||||
for file in files:
|
||||
file1 = os.path.join(work1, file)
|
||||
file2 = os.path.join(work2, file)
|
||||
|
||||
canonicalizeFile(file1, ignoreTime, ignoreSessionID, sort, delete)
|
||||
canonicalizeFile(file2, ignoreTime, ignoreSessionID, sort, delete)
|
||||
|
||||
|
||||
if not diff(file1, file2):
|
||||
failed = True
|
||||
break
|
||||
|
||||
|
||||
if not failed:
|
||||
print "ok"
|
||||
else:
|
||||
Failed = failed
|
||||
|
||||
|
||||
# Make the result of process new baseline.
|
||||
def makeNewBase(tag, files, ignoreTime, sort, delete):
|
||||
|
||||
|
@ -261,21 +264,21 @@ def makeNewBase(tag, files, ignoreTime, sort, delete):
|
|||
except OSError, e:
|
||||
if e.errno != errno.EEXIST:
|
||||
raise
|
||||
|
||||
|
||||
base = os.path.join(Base, tag)
|
||||
work = workDir(tag)
|
||||
|
||||
print " Copying files for %s..." % tag
|
||||
|
||||
|
||||
try:
|
||||
os.mkdir(base)
|
||||
except OSError, e:
|
||||
if e.errno != errno.EEXIST:
|
||||
raise
|
||||
|
||||
|
||||
# Delete all files but those belonging to CVS.
|
||||
os.system("find %s -type f -not -path '*/CVS/*' -not -path '*/.svn/*' -exec rm '{}' ';'" % base)
|
||||
|
||||
|
||||
for file in files:
|
||||
oldfile = os.path.join(work, file)
|
||||
newfile = os.path.join(base, file)
|
||||
|
@ -285,13 +288,13 @@ def makeNewBase(tag, files, ignoreTime, sort, delete):
|
|||
def testSet(set):
|
||||
if Options.set and set != Options.set:
|
||||
return False
|
||||
|
||||
|
||||
print "Running set '%s' ..." % set
|
||||
return True
|
||||
|
||||
|
||||
# Either check given files or make it new baseline, depending on options.
|
||||
def finishTest(tag, files, ignoreTime=False, sort=False, delete=None):
|
||||
if Options.newbase:
|
||||
makeNewBase(tag, files, ignoreTime, sort, delete)
|
||||
else:
|
||||
checkFiles(tag, files, ignoreTime, sort, delete)
|
||||
checkFiles(tag, files, ignoreTime, sort, delete)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue