perfsonar-dev - perfsonar: r2974 - in branches/new-structure/trunk/surfnet_java-flowsa-ma: conf conf/axis-1.4/WEB-INF conf/axis-1.4/WEB-INF/classes/nl/surfnet/web src/main/java/org/perfsonar/service/measurementArchive/flowsa src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump/outputreaders
Subject: perfsonar development work
List archive
perfsonar: r2974 - in branches/new-structure/trunk/surfnet_java-flowsa-ma: conf conf/axis-1.4/WEB-INF conf/axis-1.4/WEB-INF/classes/nl/surfnet/web src/main/java/org/perfsonar/service/measurementArchive/flowsa src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump/outputreaders
Chronological Thread
- From:
- To:
- Subject: perfsonar: r2974 - in branches/new-structure/trunk/surfnet_java-flowsa-ma: conf conf/axis-1.4/WEB-INF conf/axis-1.4/WEB-INF/classes/nl/surfnet/web src/main/java/org/perfsonar/service/measurementArchive/flowsa src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump/outputreaders
- Date: Thu, 18 Oct 2007 21:01:16 -0400
Author: michael.bischoff
Date: 2007-10-18 21:01:16 -0400 (Thu, 18 Oct 2007)
New Revision: 2974
Modified:
branches/new-structure/trunk/surfnet_java-flowsa-ma/conf/axis-1.4/WEB-INF/classes/nl/surfnet/web/IpAccessFilter.java
branches/new-structure/trunk/surfnet_java-flowsa-ma/conf/axis-1.4/WEB-INF/server-config.wsdd
branches/new-structure/trunk/surfnet_java-flowsa-ma/conf/service.properties
branches/new-structure/trunk/surfnet_java-flowsa-ma/src/main/java/org/perfsonar/service/measurementArchive/flowsa/FlowsaMAServiceEngine.java
branches/new-structure/trunk/surfnet_java-flowsa-ma/src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump/NfdumpOutputReader.java
branches/new-structure/trunk/surfnet_java-flowsa-ma/src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump/outputreaders/Nfdump1_5_5OutputReaderImpl.java
Log:
Modified:
branches/new-structure/trunk/surfnet_java-flowsa-ma/conf/axis-1.4/WEB-INF/classes/nl/surfnet/web/IpAccessFilter.java
===================================================================
---
branches/new-structure/trunk/surfnet_java-flowsa-ma/conf/axis-1.4/WEB-INF/classes/nl/surfnet/web/IpAccessFilter.java
2007-10-18 11:36:48 UTC (rev 2973)
+++
branches/new-structure/trunk/surfnet_java-flowsa-ma/conf/axis-1.4/WEB-INF/classes/nl/surfnet/web/IpAccessFilter.java
2007-10-19 01:01:16 UTC (rev 2974)
@@ -1,7 +1,7 @@
/*
* IpAccessFilter.java
*/
-
+
package nl.surfnet.web;
import java.io.IOException;
@@ -23,154 +23,173 @@
*/
public class IpAccessFilter implements Filter {
- private FilterConfig filterConfig = null;
- private static final boolean debug = true;
+ private FilterConfig filterConfig = null;
+ private static final boolean debug = false;
- public IpAccessFilter() {
- }
+ public IpAccessFilter() {
+ }
- /**
- *
- * @param request The servlet request we are processing
- * @param result The servlet response we are creating
- * @param chain The filter chain we are processing
- *
- * @exception IOException if an input/output error occurs
- * @exception ServletException if a servlet error occurs
- */
- public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
- if (debug) log("IpAccessFilter:doFilter()");
-
- FilterConfig config = getFilterConfig();
- String ipsParameter = config.getInitParameter("ips");
- if (debug) log("IpAccessFilter:doFilter(): ips parameter value is: "
+ ipsParameter);
-
- String remoteIp = request.getRemoteAddr();
- if (debug) log("IpAccessFilter:doFilter(): remote Adress IP : " +
remoteIp);
-
- String[] ips = ipsParameter.split(" ");
-
- boolean allowed = false;
- for(String ip : ips) {
- if(ip.equals(remoteIp)) {
- allowed = true;
- break;
- }
- }
-
- if(!allowed) {
- if(response instanceof HttpServletResponse) {
-
((HttpServletResponse)response).sendError(HttpServletResponse.SC_FORBIDDEN,
"Ip is blocked. ("+remoteIp+")");
- } else {
- sendProcessingError(new AccessControlException("Ip is
blocked. ("+remoteIp+")"), response);
- }
- return;
- }
-
- Throwable problem = null;
- try {
- chain.doFilter(request, response);
- } catch(Throwable t) {
- problem = t;
- t.printStackTrace();
+ /**
+ *
+ * @param request
+ * The servlet request we are processing
+ * @param result
+ * The servlet response we are creating
+ * @param chain
+ * The filter chain we are processing
+ *
+ * @exception IOException
+ * if an input/output error occurs
+ * @exception ServletException
+ * if a servlet error occurs
+ */
+ public void doFilter(ServletRequest request, ServletResponse response,
+ FilterChain chain) throws IOException,
ServletException {
+ if (debug)
+ log("IpAccessFilter:doFilter()");
+
+ FilterConfig config = getFilterConfig();
+ String ipsParameter = config.getInitParameter("ips");
+ if (debug)
+ log("IpAccessFilter:doFilter(): ips parameter value
is: "
+ + ipsParameter);
+
+ String remoteIp = request.getRemoteAddr();
+ if (debug)
+ log("IpAccessFilter:doFilter(): remote Adress IP : "
+ remoteIp);
+
+ String[] ips = ipsParameter.split(" ");
+
+ boolean allowed = false;
+ for (String ip : ips) {
+ if (ip.equals(remoteIp)) {
+ allowed = true;
+ break;
+ }
+ }
+
+ if (!allowed) {
+ if (response instanceof HttpServletResponse) {
+ ((HttpServletResponse) response).sendError(
+
HttpServletResponse.SC_FORBIDDEN, "Ip is blocked. ("
+ + remoteIp +
")");
+ } else {
+ sendProcessingError(new
AccessControlException(
+ "Ip is blocked. (" + remoteIp
+ ")"), response);
+ }
+ return;
+ }
+
+ Throwable problem = null;
+ try {
+ chain.doFilter(request, response);
+ } catch (Throwable t) {
+ problem = t;
+ t.printStackTrace();
+ }
+
+ if (problem != null) {
+ if (problem instanceof ServletException)
+ throw (ServletException) problem;
+ if (problem instanceof IOException)
+ throw (IOException) problem;
+ sendProcessingError(problem, response);
+ }
}
- if (problem != null) {
- if (problem instanceof ServletException) throw
(ServletException)problem;
- if (problem instanceof IOException) throw (IOException)problem;
- sendProcessingError(problem, response);
+ /**
+ * Return the filter configuration object for this filter.
+ */
+ public FilterConfig getFilterConfig() {
+ return (this.filterConfig);
}
- }
-
- /**
- * Return the filter configuration object for this filter.
- */
- public FilterConfig getFilterConfig() {
- return (this.filterConfig);
- }
- /**
- * Set the filter configuration object for this filter.
- *
- * @param filterConfig The filter configuration object
- */
- public void setFilterConfig(FilterConfig filterConfig) {
- this.filterConfig = filterConfig;
- }
+ /**
+ * Set the filter configuration object for this filter.
+ *
+ * @param filterConfig
+ * The filter configuration object
+ */
+ public void setFilterConfig(FilterConfig filterConfig) {
+ this.filterConfig = filterConfig;
+ }
- /**
- * Destroy method for this filter
- */
- public void destroy() {
- }
+ /**
+ * Destroy method for this filter
+ */
+ public void destroy() {
+ }
- /**
- * Init method for this filter
- */
- public void init(FilterConfig filterConfig) {
- this.filterConfig = filterConfig;
- if (filterConfig != null) {
- if (debug) {
- log("IpAccessFilter: Initializing filter");
- }
+ /**
+ * Init method for this filter
+ */
+ public void init(FilterConfig filterConfig) {
+ this.filterConfig = filterConfig;
+ if (filterConfig != null) {
+ if (debug) {
+ log("IpAccessFilter: Initializing filter");
+ }
+ }
}
- }
- /**
- * Return a String representation of this object.
- */
- @Override
- public String toString() {
- if (filterConfig == null) return ("IpAccessFilter()");
- StringBuffer sb = new StringBuffer("IpAccessFilter(");
- sb.append(filterConfig);
- sb.append(")");
- return (sb.toString());
- }
+ /**
+ * Return a String representation of this object.
+ */
+ @Override
+ public String toString() {
+ if (filterConfig == null)
+ return ("IpAccessFilter()");
+ StringBuffer sb = new StringBuffer("IpAccessFilter(");
+ sb.append(filterConfig);
+ sb.append(")");
+ return (sb.toString());
+ }
- private void sendProcessingError(Throwable t, ServletResponse response)
{
- String stackTrace = getStackTrace(t);
- if(stackTrace != null && !stackTrace.equals("")) {
- try {
- response.setContentType("text/html");
- PrintStream ps = new PrintStream(response.getOutputStream());
- PrintWriter pw = new PrintWriter(ps);
-
pw.print("<html>\n<head>\n<title>Error</title>\n</head>\n<body>\n"); //NOI18N
- pw.print("<h1>The resource did not process
correctly</h1>\n<pre>\n");
- pw.print(stackTrace);
- pw.print("</pre></body>\n</html>"); //NOI18N
- pw.close();
- ps.close();
- response.getOutputStream().close();
- } catch(Exception ex) {}
- } else {
- try {
- PrintStream ps = new PrintStream(response.getOutputStream());
- t.printStackTrace(ps);
- ps.close();
- response.getOutputStream().close();
- } catch(Exception ex){}
+ private void sendProcessingError(Throwable t, ServletResponse
response) {
+ String stackTrace = getStackTrace(t);
+ if (stackTrace != null && !stackTrace.equals("")) {
+ try {
+ response.setContentType("text/html");
+ PrintStream ps = new
PrintStream(response.getOutputStream());
+ PrintWriter pw = new PrintWriter(ps);
+ pw
+
.print("<html>\n<head>\n<title>Error</title>\n</head>\n<body>\n"); // NOI18N
+ pw
+ .print("<h1>The resource did
not process correctly</h1>\n<pre>\n");
+ pw.print(stackTrace);
+ pw.print("</pre></body>\n</html>"); // NOI18N
+ pw.close();
+ ps.close();
+ response.getOutputStream().close();
+ } catch (Exception ex) {
+ }
+ } else {
+ try {
+ PrintStream ps = new
PrintStream(response.getOutputStream());
+ t.printStackTrace(ps);
+ ps.close();
+ response.getOutputStream().close();
+ } catch (Exception ex) {
+ }
+ }
}
- }
- public static String getStackTrace(Throwable t) {
- String stackTrace = null;
- try {
- StringWriter sw = new StringWriter();
- PrintWriter pw = new PrintWriter(sw);
- t.printStackTrace(pw);
- pw.close();
- sw.close();
- stackTrace = sw.getBuffer().toString();
+ public static String getStackTrace(Throwable t) {
+ String stackTrace = null;
+ try {
+ StringWriter sw = new StringWriter();
+ PrintWriter pw = new PrintWriter(sw);
+ t.printStackTrace(pw);
+ pw.close();
+ sw.close();
+ stackTrace = sw.getBuffer().toString();
+ } catch (Exception ex) {
+ }
+ return stackTrace;
}
- catch(Exception ex) {}
- return stackTrace;
- }
- public void log(String msg) {
- filterConfig.getServletContext().log(msg);
- }
+ public void log(String msg) {
+ filterConfig.getServletContext().log(msg);
+ }
}
-
-
Modified:
branches/new-structure/trunk/surfnet_java-flowsa-ma/conf/axis-1.4/WEB-INF/server-config.wsdd
===================================================================
---
branches/new-structure/trunk/surfnet_java-flowsa-ma/conf/axis-1.4/WEB-INF/server-config.wsdd
2007-10-18 11:36:48 UTC (rev 2973)
+++
branches/new-structure/trunk/surfnet_java-flowsa-ma/conf/axis-1.4/WEB-INF/server-config.wsdd
2007-10-19 01:01:16 UTC (rev 2974)
@@ -5,9 +5,9 @@
<parameter name="enableNamespacePrefixOptimization" value="false"/>
<parameter name="dotNetSoapEncFix" value="true"/>
<parameter name="disablePrettyXML" value="true"/>
+ <parameter name="attachments.implementation"
value="org.apache.axis.attachments.AttachmentsImpl"/>
+ <parameter name="sendXsiTypes" value="true"/>
<parameter name="sendMultiRefs" value="true"/>
- <parameter name="sendXsiTypes" value="true"/>
- <parameter name="attachments.implementation"
value="org.apache.axis.attachments.AttachmentsImpl"/>
<parameter name="sendXMLDeclaration" value="true"/>
<requestFlow>
<handler type="java:org.apache.axis.handlers.JWSHandler">
Modified:
branches/new-structure/trunk/surfnet_java-flowsa-ma/conf/service.properties
===================================================================
---
branches/new-structure/trunk/surfnet_java-flowsa-ma/conf/service.properties
2007-10-18 11:36:48 UTC (rev 2973)
+++
branches/new-structure/trunk/surfnet_java-flowsa-ma/conf/service.properties
2007-10-19 01:01:16 UTC (rev 2974)
@@ -40,7 +40,7 @@
# nfdump.outputreader - fully qualified name of the class used for output
reading (expects a class implementing NfdumpOutputReader)
service.ma.flowsa.nfdump.source=/var/nfdump/flows
service.ma.flowsa.nfdump.location=/usr/local/bin/nfdump
-service.ma.flowsa.nfdump.ouputreader=org.perfsonar.service.measurementArchive.flowsa.nfdump.outputreaders.Nfdump152OutputReaderFactory
+service.ma.flowsa.nfdump.ouputreader=org.perfsonar.service.measurementArchive.flowsa.nfdump.outputreaders.Nfdump1_5_5OutputReaderFactory
# --- nfcapd properties ---
# nfcapd.start-processes - if nfcapd should start processes for exporters,
specify false if this is done externally
Modified:
branches/new-structure/trunk/surfnet_java-flowsa-ma/src/main/java/org/perfsonar/service/measurementArchive/flowsa/FlowsaMAServiceEngine.java
===================================================================
---
branches/new-structure/trunk/surfnet_java-flowsa-ma/src/main/java/org/perfsonar/service/measurementArchive/flowsa/FlowsaMAServiceEngine.java
2007-10-18 11:36:48 UTC (rev 2973)
+++
branches/new-structure/trunk/surfnet_java-flowsa-ma/src/main/java/org/perfsonar/service/measurementArchive/flowsa/FlowsaMAServiceEngine.java
2007-10-19 01:01:16 UTC (rev 2974)
@@ -279,9 +279,10 @@
protected NfdumpControll createNfdumpControll() throws
PerfSONARException {
File nfdumpExecutable = getExecutableFrom(configuration);
if (!nfdumpExecutable.exists()) {
+ logger.error("Nfdump executable not found!
("+nfdumpExecutable+")");
throw new PerfSONARException(
"", //TODO errorcode
- "Nfdump executable not found."
+ "Nfdump executable not found. "
);
}
@@ -291,6 +292,7 @@
try {
return new
NfdumpControll(nfdumpExecutable,readerFactoryClassName,maxResults,timeoutValue);
} catch (Exception e) {
+ logger.error("Couldn't create nfdump controll. Underlaying
exception: " + e.getLocalizedMessage());
throw new PerfSONARException(
"", //TODO errorcode
"Couldn't create nfdump controll.",
Modified:
branches/new-structure/trunk/surfnet_java-flowsa-ma/src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump/NfdumpOutputReader.java
===================================================================
---
branches/new-structure/trunk/surfnet_java-flowsa-ma/src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump/NfdumpOutputReader.java
2007-10-18 11:36:48 UTC (rev 2973)
+++
branches/new-structure/trunk/surfnet_java-flowsa-ma/src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump/NfdumpOutputReader.java
2007-10-19 01:01:16 UTC (rev 2974)
@@ -24,19 +24,21 @@
* @return the record encountered at stream or null if end of stream has
* been reached
* @see
org.perfsonar.service.measurementArchive.flowsa.nfdump.NfdumpOutputReader#readRecord()
- * @throws IOException throws an IOException if the reader couldn't
parse the input
+ * @throws IOException if the reader has input but couldn't parse
*/
public Flow readRecord() throws IOException;
/**
- * @return
- * @throws IOException
+ * @return the statistic encountered at stream or null if end of
stream has
+ * been reached
+ * @throws IOException if the reader has input but couldn't parse
*/
public Statistics readStatistics() throws IOException;
/**
- * @return
- * @throws IOException
+ * @return the topDatum encountered at stream or null if end of
stream has
+ * been reached
+ * @throws IOException if the reader has input but couldn't parse
*/
public TopDatum readTopDatum() throws IOException;
Modified:
branches/new-structure/trunk/surfnet_java-flowsa-ma/src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump/outputreaders/Nfdump1_5_5OutputReaderImpl.java
===================================================================
---
branches/new-structure/trunk/surfnet_java-flowsa-ma/src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump/outputreaders/Nfdump1_5_5OutputReaderImpl.java
2007-10-18 11:36:48 UTC (rev 2973)
+++
branches/new-structure/trunk/surfnet_java-flowsa-ma/src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump/outputreaders/Nfdump1_5_5OutputReaderImpl.java
2007-10-19 01:01:16 UTC (rev 2974)
@@ -176,49 +176,45 @@
}
private TopDatum parseTopDatum(String line) throws IOException {
- if (line.startsWith("Aggregated flows")
- || line.startsWith("Top 10 flows ordered by
packets:")) {
+ if("".equals(line)) { // FIX 1.5.5 Topdata ends with a
useless empty line while using the piped format.
return null;
+ }
+ if (line.startsWith("Aggregated flows") ||
line.startsWith("Top ")) {
+ return null;
}
- String[] values = line.split("\\|", 17);
- if (values.length == 16) {
- TopDatum datum = new TopDatum();
- datum.setAdressFamily(values[0]);
- datum.setTimeFirstSeen(values[1]);
- datum.setMsecFirstSeen(values[2]);
- datum.setTimeLastSeen(values[3]);
- datum.setMsecLastSeen(values[4]);
- datum.setProtocol(values[5]);
- datum.setTopStatistic(intSetToIp(values[6],
values[7], values[8], values[9]));
- datum.setFlows(values[10]);
- datum.setPackets(values[11]);
- datum.setBytes(values[12]);
- datum.setPacketsPerSecond(values[13]);
- datum.setBytesPerSecond(values[14]);
- datum.setBytesPerPacket(values[15]);
- return datum;
- } else if (values.length == 13) {
- TopDatum datum = new TopDatum();
- datum.setAdressFamily(values[0]);
- datum.setTimeFirstSeen(values[1]);
- datum.setMsecFirstSeen(values[2]);
- datum.setTimeLastSeen(values[3]);
- datum.setMsecLastSeen(values[4]);
- datum.setProtocol(values[5]);
+ String[] values = line.split("\\|", 25);
+ if (values.length != 13 && values.length != 16 &&
values.length != 24) {
+ // hell.raise()
+ throw new IOException("Cannot read nfdump output:
Line did not sadisfy the right format.");
+ }
+
+ TopDatum datum = new TopDatum();
+ datum.setAdressFamily(values[0]);
+ datum.setTimeFirstSeen(values[1]);
+ datum.setMsecFirstSeen(values[2]);
+ datum.setTimeLastSeen(values[3]);
+ datum.setMsecLastSeen(values[4]);
+ datum.setProtocol(values[5]);
+ int offset = 0;
+ if (values.length == 13) {
datum.setTopStatistic(values[6]);
- datum.setFlows(values[7]);
- datum.setPackets(values[8]);
- datum.setBytes(values[9]);
- datum.setPacketsPerSecond(values[10]);
- datum.setBytesPerSecond(values[11]);
- datum.setBytesPerPacket(values[12]);
- return datum;
+ offset = 6;
+ } else if (values.length == 16) {
+ datum.setTopStatistic(intSetToIp(values[6],
values[7], values[8], values[9]));
+ offset = 9;
+ } else if(values.length == 24) {
+ datum.setTopStatistic(intSetToIp(values[6],
values[7], values[8], values[9])+":"+values[11] +" -> " +
intSetToIp(values[12], values[13], values[14], values[15])+":"+values[16]);
+ offset = 16;
}
+ datum.setFlows(values[offset+1]);
+ datum.setPackets(values[offset+2]);
+ datum.setBytes(values[offset+3]);
+ datum.setPacketsPerSecond(values[offset+4]);
+ datum.setBytesPerSecond(values[offset+5]);
+ datum.setBytesPerPacket(values[offset+6]);
+ return datum;
- // hell.raise()
- throw new IOException(
- "Cannot read nfdump output: Line did not
sadisfy the right format.");
}
private Flow parseRecord(String line) throws IOException {
@@ -274,26 +270,25 @@
private static String intSetToIp(long first, long second, long third,
long fourth) {
if(first == 0 && second == 0 && third == 0) {
return intToIpv4((int) fourth);
- } else {
- byte[] addr = new byte[16];
- addr[0] = (byte) ((first >> 24) & 0xFF);
- addr[1] = (byte) ((first >> 16) & 0xFF);
- addr[2] = (byte) ((first >> 8) & 0xFF);
- addr[3] = (byte) (first & 0xFF);
- addr[4] = (byte) ((second >> 24) & 0xFF);
- addr[5] = (byte) ((second >> 16) & 0xFF);
- addr[6] = (byte) ((second >> 8) & 0xFF);
- addr[7] = (byte) (second & 0xFF);
- addr[8] = (byte) ((third >> 24) & 0xFF);
- addr[9] = (byte) ((third >> 16) & 0xFF);
- addr[10] = (byte) ((third >> 8) & 0xFF);
- addr[11] = (byte) (third & 0xFF);
- addr[12] = (byte) ((fourth >> 24) & 0xFF);
- addr[13] = (byte) ((fourth >> 16) & 0xFF);
- addr[14] = (byte) ((fourth >> 8) & 0xFF);
- addr[15] = (byte) (fourth & 0xFF);
- return numericToTextFormat(addr);
}
+ byte[] addr = new byte[16];
+ addr[0] = (byte) ((first >> 24) & 0xFF);
+ addr[1] = (byte) ((first >> 16) & 0xFF);
+ addr[2] = (byte) ((first >> 8) & 0xFF);
+ addr[3] = (byte) (first & 0xFF);
+ addr[4] = (byte) ((second >> 24) & 0xFF);
+ addr[5] = (byte) ((second >> 16) & 0xFF);
+ addr[6] = (byte) ((second >> 8) & 0xFF);
+ addr[7] = (byte) (second & 0xFF);
+ addr[8] = (byte) ((third >> 24) & 0xFF);
+ addr[9] = (byte) ((third >> 16) & 0xFF);
+ addr[10] = (byte) ((third >> 8) & 0xFF);
+ addr[11] = (byte) (third & 0xFF);
+ addr[12] = (byte) ((fourth >> 24) & 0xFF);
+ addr[13] = (byte) ((fourth >> 16) & 0xFF);
+ addr[14] = (byte) ((fourth >> 8) & 0xFF);
+ addr[15] = (byte) (fourth & 0xFF);
+ return numericToTextFormat(addr);
}
// http://mindprod.com/jgloss/ip.html
@@ -322,8 +317,7 @@
private static String numericToTextFormat(byte[] src) {
StringBuffer sb = new StringBuffer(39);
for (int i = 0; i < (INADDRSZ / INT16SZ); i++) {
- sb.append(Integer.toHexString(((src[i << 1] << 8) &
0xff00)
- | (src[(i << 1) + 1] & 0xff)));
+ sb.append(Integer.toHexString(((src[i << 1] << 8) &
0xff00) | (src[(i << 1) + 1] & 0xff)));
if (i < (INADDRSZ / INT16SZ) - 1) {
sb.append(":");
}
- perfsonar: r2974 - in branches/new-structure/trunk/surfnet_java-flowsa-ma: conf conf/axis-1.4/WEB-INF conf/axis-1.4/WEB-INF/classes/nl/surfnet/web src/main/java/org/perfsonar/service/measurementArchive/flowsa src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump src/main/java/org/perfsonar/service/measurementArchive/flowsa/nfdump/outputreaders, svnlog, 10/18/2007
Archive powered by MHonArc 2.6.16.