<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://g2.doxu.org/index.php?action=history&amp;feed=atom&amp;title=KHLA</id>
	<title>KHLA - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://g2.doxu.org/index.php?action=history&amp;feed=atom&amp;title=KHLA"/>
	<link rel="alternate" type="text/html" href="https://g2.doxu.org/index.php?title=KHLA&amp;action=history"/>
	<updated>2026-04-28T03:13:02Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.38.4</generator>
	<entry>
		<id>https://g2.doxu.org/index.php?title=KHLA&amp;diff=2938&amp;oldid=prev</id>
		<title>CyberBob: Fixed typo</title>
		<link rel="alternate" type="text/html" href="https://g2.doxu.org/index.php?title=KHLA&amp;diff=2938&amp;oldid=prev"/>
		<updated>2009-01-29T09:49:34Z</updated>

		<summary type="html">&lt;p&gt;Fixed typo&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:49, 29 January 2009&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l32&quot;&gt;Line 32:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 32:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Unique ID which must be same as sent on corresponding /KHLR packet. Client requesting&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Unique ID which must be same as sent on corresponding /KHLR packet. Client requesting&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Known Hub List should compare if ID is same as corresponding /KHLR packet for &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;sequrity&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Known Hub List should compare if ID is same as corresponding /KHLR packet for &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;security&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;reason.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;reason.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>CyberBob</name></author>
	</entry>
	<entry>
		<id>https://g2.doxu.org/index.php?title=KHLA&amp;diff=2937&amp;oldid=prev</id>
		<title>CyberBob: tiny update</title>
		<link rel="alternate" type="text/html" href="https://g2.doxu.org/index.php?title=KHLA&amp;diff=2937&amp;oldid=prev"/>
		<updated>2009-01-29T03:05:14Z</updated>

		<summary type="html">&lt;p&gt;tiny update&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 03:05, 29 January 2009&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l12&quot;&gt;Line 12:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 12:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Receiving ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Receiving ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Upon receiving a known hub list, the detailed hubs should be stored in appropriate&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Upon receiving a known hub list, the detailed hubs should be stored in appropriate data structures.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;data structures&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;. Neighbouring hubs must be retained in the hub cluster records,&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;while cached hubs should be merged with the local accessible hub cache&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Payload ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Payload ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>CyberBob</name></author>
	</entry>
	<entry>
		<id>https://g2.doxu.org/index.php?title=KHLA&amp;diff=2936&amp;oldid=prev</id>
		<title>CyberBob: Added detail of KHLA packet. (incomplete)</title>
		<link rel="alternate" type="text/html" href="https://g2.doxu.org/index.php?title=KHLA&amp;diff=2936&amp;oldid=prev"/>
		<updated>2009-01-29T03:03:21Z</updated>

		<summary type="html">&lt;p&gt;Added detail of KHLA packet. (incomplete)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Packets}}&lt;br /&gt;
&lt;br /&gt;
= /KHLA =&lt;br /&gt;
&lt;br /&gt;
The known hub list acknowledgement packet is part of UKHL implementation, used to&lt;br /&gt;
answer back to request of packet list of known Gnutella2 hubs with /KHLR packet.&lt;br /&gt;
&lt;br /&gt;
== Sending ==&lt;br /&gt;
&lt;br /&gt;
This packet should be sent through UDP when received /KHLR packet.&lt;br /&gt;
&lt;br /&gt;
== Receiving ==&lt;br /&gt;
&lt;br /&gt;
Upon receiving a known hub list, the detailed hubs should be stored in appropriate&lt;br /&gt;
data structures. Neighbouring hubs must be retained in the hub cluster records,&lt;br /&gt;
while cached hubs should be merged with the local accessible hub cache.&lt;br /&gt;
&lt;br /&gt;
== Payload ==&lt;br /&gt;
&lt;br /&gt;
This packet has no payload at the current time.&lt;br /&gt;
&lt;br /&gt;
== Children ==&lt;br /&gt;
&lt;br /&gt;
This packet has several child packet types defined at the current time:&lt;br /&gt;
&lt;br /&gt;
* /KHLA/UKHLID - Unique ID&lt;br /&gt;
* /KHLA/YOURIP - IP address of requester.&lt;br /&gt;
* /KHLA/URL    - URL to UKHL services for bootstrap propagation.&lt;br /&gt;
* /KHLA/TS     - Timestamp&lt;br /&gt;
* /KHLA/NH     - Neighbouring Hub&lt;br /&gt;
* /KHLA/CH     - Cached Hub&lt;br /&gt;
&lt;br /&gt;
== /KHLA/UKHLID - Unique ID ==&lt;br /&gt;
&lt;br /&gt;
Unique ID which must be same as sent on corresponding /KHLR packet. Client requesting&lt;br /&gt;
Known Hub List should compare if ID is same as corresponding /KHLR packet for sequrity&lt;br /&gt;
reason.&lt;br /&gt;
&lt;br /&gt;
=== Sending ===&lt;br /&gt;
&lt;br /&gt;
This child is optional but recommended.&lt;br /&gt;
&lt;br /&gt;
=== Payload ===&lt;br /&gt;
&lt;br /&gt;
16Byte unique ID such as GUID.&lt;br /&gt;
&lt;br /&gt;
== /KHLA/TS - Timestamp ==&lt;br /&gt;
&lt;br /&gt;
The /KHLA/TS child provides a timestamp representing the current universal time at&lt;br /&gt;
the sending node. This can be used as a reference when considering other&lt;br /&gt;
timestamps in the packet, allowing them to be adjusted to eliminate differences&lt;br /&gt;
between the time setting on the local and remote node.&lt;br /&gt;
&lt;br /&gt;
=== Sending ===&lt;br /&gt;
&lt;br /&gt;
This child is optional but recommended.&lt;br /&gt;
&lt;br /&gt;
=== Payload ===&lt;br /&gt;
&lt;br /&gt;
A 32-bit integer representing the current UNIX time, or time (NULL).&lt;br /&gt;
&lt;br /&gt;
=== Children ===&lt;br /&gt;
&lt;br /&gt;
This packet has no known children at the current time.&lt;br /&gt;
&lt;br /&gt;
== /KHLA/NH - Neighbouring Hub ==&lt;br /&gt;
&lt;br /&gt;
This child packet represents a neighbouring hub.&lt;br /&gt;
&lt;br /&gt;
=== Sending ===&lt;br /&gt;
&lt;br /&gt;
One should be included for each Gnutella2 neighbour hub, with the possible&lt;br /&gt;
exception of the one to which this packet is being sent.&lt;br /&gt;
&lt;br /&gt;
=== Payload ===&lt;br /&gt;
&lt;br /&gt;
The node address of the hub. See [[datatypes]] for more information.&lt;br /&gt;
&lt;br /&gt;
=== Children ===&lt;br /&gt;
&lt;br /&gt;
This packet has several child packet types defined at the current time:&lt;br /&gt;
&lt;br /&gt;
* /KHLA/NH/GU - GUID&lt;br /&gt;
* /KHLA/NH/V - Vendor Code&lt;br /&gt;
* /KHLA/NH/LS - Library Statistics&lt;br /&gt;
* /KHLA/NH/HS - Hub Status&lt;br /&gt;
&lt;br /&gt;
=== /KHLA/NH/GU - GUID ===&lt;br /&gt;
&lt;br /&gt;
The /KHLA/NH/GU child packet specifies the globally unique identifier of the hub.&lt;br /&gt;
&lt;br /&gt;
==== Sending ====&lt;br /&gt;
&lt;br /&gt;
This child is optional.&lt;br /&gt;
&lt;br /&gt;
==== Payload ====&lt;br /&gt;
&lt;br /&gt;
The 16 byte globally unique node identifier of the hub.&lt;br /&gt;
&lt;br /&gt;
==== Children ====&lt;br /&gt;
&lt;br /&gt;
This packet has no known children at the current time.&lt;br /&gt;
&lt;br /&gt;
=== /KHLA/NH/V - Vendor Code ===&lt;br /&gt;
&lt;br /&gt;
The /KHLA/NH/V child packet specifies the vendor code of the software operating the&lt;br /&gt;
hub.&lt;br /&gt;
&lt;br /&gt;
==== Sending ====&lt;br /&gt;
&lt;br /&gt;
This child is optional.&lt;br /&gt;
&lt;br /&gt;
==== Payload ====&lt;br /&gt;
&lt;br /&gt;
A four byte vendor code.&lt;br /&gt;
&lt;br /&gt;
==== Children ====&lt;br /&gt;
&lt;br /&gt;
This packet has no known children at the current time.&lt;br /&gt;
&lt;br /&gt;
=== /KHLA/NH/LS - Library Statistics ===&lt;br /&gt;
&lt;br /&gt;
The /KHLA/NH/LS packet provides information about the content library of the hub&lt;br /&gt;
and its connected leaves.&lt;br /&gt;
&lt;br /&gt;
==== Sending ====&lt;br /&gt;
&lt;br /&gt;
This child is optional.&lt;br /&gt;
&lt;br /&gt;
==== Payload ====&lt;br /&gt;
&lt;br /&gt;
Two 32-bit integers representing the number of files, and the total KB of available&lt;br /&gt;
content in the hub's own library and the libraries of its connected leaves. The&lt;br /&gt;
payload may grow beyond 8 bytes in the future.&lt;br /&gt;
&lt;br /&gt;
==== Children ====&lt;br /&gt;
&lt;br /&gt;
This packet has no known children at the current time.&lt;br /&gt;
&lt;br /&gt;
=== /KHLA/NH/HS - Hub Status ===&lt;br /&gt;
&lt;br /&gt;
The /KHLA/NH/HS packet contains the status of the hub.&lt;br /&gt;
&lt;br /&gt;
==== Sending ====&lt;br /&gt;
&lt;br /&gt;
This child is optional.&lt;br /&gt;
&lt;br /&gt;
==== Payload ====&lt;br /&gt;
&lt;br /&gt;
Two 16-bit integers representing the current leaf count and the maximum leaf count&lt;br /&gt;
respectively. This packet may grow beyond 4 bytes in the future.&lt;br /&gt;
&lt;br /&gt;
==== Children ====&lt;br /&gt;
&lt;br /&gt;
This packet has no known children at the current time.&lt;br /&gt;
&lt;br /&gt;
== /KHLA/CH - Cached Hub ==&lt;br /&gt;
&lt;br /&gt;
This child packet represents a hub from the hub cache.&lt;br /&gt;
&lt;br /&gt;
=== Sending ===&lt;br /&gt;
&lt;br /&gt;
An arbitrary number of these children should be included, constrained by space and&lt;br /&gt;
the number of available cached hubs. A selection of freshly time stamped but&lt;br /&gt;
previously unknown hubs should be included, and the list should not include hubs in&lt;br /&gt;
the local cluster.&lt;br /&gt;
&lt;br /&gt;
=== Payload ===&lt;br /&gt;
&lt;br /&gt;
The node address of the hub, followed by the time this hub was last seen as a 32-bit&lt;br /&gt;
timestamp. The last seen time can be adjusted based on the difference between the&lt;br /&gt;
/KHLA/TS timestamp and the local time. Note that the node address is of variable&lt;br /&gt;
length, so it is important to consider the last 4 bytes as the timestamp rather than&lt;br /&gt;
assuming a fixed length node address.&lt;br /&gt;
&lt;br /&gt;
=== Children ===&lt;br /&gt;
&lt;br /&gt;
This packet has several child packet types defined at the current time:&lt;br /&gt;
&lt;br /&gt;
* /KHLA/CH/GU - GUID&lt;br /&gt;
* /KHLA/CH/V - Vendor Code&lt;br /&gt;
* /KHLA/CH/LS - Library Statistics&lt;br /&gt;
* /KHLA/CH/HS - Hub Status&lt;br /&gt;
&lt;br /&gt;
This extra information is considered less relevant for a cached hub because it is&lt;br /&gt;
unlikely to be up to date enough to be useful.&lt;br /&gt;
&lt;br /&gt;
=== /KHLA/CH/GU - GUID ===&lt;br /&gt;
&lt;br /&gt;
The /KHLA/CH/GU child packet specifies the globally unique identifier of the hub.&lt;br /&gt;
&lt;br /&gt;
==== Sending ====&lt;br /&gt;
&lt;br /&gt;
This child is optional.&lt;br /&gt;
&lt;br /&gt;
==== Payload ====&lt;br /&gt;
&lt;br /&gt;
The 16 byte globally unique node identifier of the hub.&lt;br /&gt;
&lt;br /&gt;
==== Children ====&lt;br /&gt;
&lt;br /&gt;
This packet has no known children at the current time.&lt;br /&gt;
&lt;br /&gt;
=== /KHLA/CH/V - Vendor Code ===&lt;br /&gt;
&lt;br /&gt;
The /KHLA/CH/V child packet specifies the vendor code of the software operating the&lt;br /&gt;
hub.&lt;br /&gt;
&lt;br /&gt;
==== Sending ====&lt;br /&gt;
&lt;br /&gt;
This child is optional.&lt;br /&gt;
&lt;br /&gt;
==== Payload ====&lt;br /&gt;
&lt;br /&gt;
A four byte vendor code.&lt;br /&gt;
&lt;br /&gt;
==== Children ====&lt;br /&gt;
&lt;br /&gt;
This packet has no known children at the current time.&lt;br /&gt;
&lt;br /&gt;
=== /KHLA/CH/LS - Library Statistics ===&lt;br /&gt;
&lt;br /&gt;
The /KHLA/NH/LS packet provides information about the content library of the hub&lt;br /&gt;
and its connected leaves.&lt;br /&gt;
&lt;br /&gt;
==== Sending ====&lt;br /&gt;
&lt;br /&gt;
This child is optional.&lt;br /&gt;
&lt;br /&gt;
==== Payload ====&lt;br /&gt;
&lt;br /&gt;
Two 32-bit integers representing the number of files, and the total KB of available&lt;br /&gt;
content in the hub's own library and the libraries of its connected leaves. The&lt;br /&gt;
payload may grow beyond 8 bytes in the future.&lt;br /&gt;
&lt;br /&gt;
==== Children ====&lt;br /&gt;
&lt;br /&gt;
This packet has no known children at the current time.&lt;br /&gt;
&lt;br /&gt;
=== /KHLA/CH/HS - Hub Status ===&lt;br /&gt;
&lt;br /&gt;
The /KHLA/CH/HS packet contains the status of the hub.&lt;br /&gt;
&lt;br /&gt;
==== Sending ====&lt;br /&gt;
&lt;br /&gt;
This child is optional.&lt;br /&gt;
&lt;br /&gt;
==== Payload ====&lt;br /&gt;
&lt;br /&gt;
Two 16-bit integers representing the current leaf count and the maximum leaf count&lt;br /&gt;
respectively. This packet may grow beyond 4 bytes in the future.&lt;br /&gt;
&lt;br /&gt;
==== Children ====&lt;br /&gt;
&lt;br /&gt;
This packet has no known children at the current time.&lt;/div&gt;</summary>
		<author><name>CyberBob</name></author>
	</entry>
</feed>