Secondary Client  - Secondary To Primary File Index Operation (aka Sending / Removing Shared Files To Primary)


When a client searches for a file across the WinMX Peer Network (WPN) it will receive a list of files to choose from. In the case of a secondary client initiating the search the file list is compiled by a local primary client and consists of results found on other remote primary network clients.

The file indexing for the WPN is done soley by primary clients and so to facillitate the indexing of files held by secondary clients a list of such files are send to a Primary client which adds them to an array.

As shown above the each remote primary will reply to the requesting primary ONLY with files in its own array that match the requested string (or file hash) either in full or a partial match.

To avoid any confusion at this stage we must all understand that no files themselves are being exchanged or collated only the file titles or descriptions.

Now we have seen how the file indexing system works lets look closer at how one of the primary clients constructs its array.

Scenario: We are connected to the WPN as a Secondary client.

Lets begin by contacting the Primary we are connected to and letting it have a list of the files we are sharing. We undertake this task by sending a specific set of packet numbers to the primary.

If we are sharing a single folder of files we can use the 0FA1 Packet

[0x0FA1][ Packet Data Length : 2 ][ Full Path Shared File Name  : S ][ 00 : 1 ][ File Hash : 20 ][ File Size : 4 ][ Bitrate : 2 ][ Sample Frequency : 4 ][ Playback time: 4 ]

As you can see each files title & file hash are shared with the local primary along with our USERERNAME, Line type , IP and transfer port.

In this way a remote client of either network level can contact the actual file holder directly to obtain the files by client to client file transfer.

©2005-2020 All rights reserved. Page last updated Wed Jan 22 2020