Hi steve
I want to advice some info for you. Firstly why your friend want to block p2p file sharing. I think he want to control the internet bandwidth usage for user.
Blocking p2p file sharing on router is not easy for normal user, I guess. The way to block p2p file sharing is using firewall,URL blocking and Qos (if router support,butQos do not block p2p, it only make p2p to become low priority other than voice or other data packets).
In the case of using firewall, you could use default firewall from the router or you could make firmware upgrade to make more control like tomato firmware and it's more good and more control but only recommend for experienced user.So it's a good
option to use default firewall for normal user. The application protocol that should block in firewall are ADC, BitTorrent, ED2K, Gnutella, rsync, MLDonkey, Ares, Direct Connect, FastTrack, eDonkey, MANOLITO/MP2PN, OpenNAP, 100Bao, Aimster, Applejuice,Freenet,GnucleusLAN,GoBoogy,KuGoo,OpenFT,MUTE,Soribada,Soulseek.Xunlei, because p2p file sharing work on application layer of OSI seven layer model. And you should block ftp (tcp port 20,21) but it's different from p2p model. And when you block the port, you should block all port, port range0-65535 except the port you will need such as http 80,https 443 (for web),pop3 110,smtp 25,imap 143 (for server base mail).But there is one thing to aware is that p2p can travel over http and pop3/smtp Check this link
http://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers for more detail.
Another way for p2p blocking is URL blocking, but it's not so efficient but it's more easy, I guess. Search the p2p file sharing website in google and list them and insert it to the URL block list of his router. When inserting the URL address of website, it's more good to insert the IP address of that website, because anybody who knows the IP address of that website can bypass if you were block only with URL). To see the ip address of a website, go to the command prompt and ping the website,
eg ping
www.google.com, and you will get the ip address of google from reply message.
And the last is using Qos if router support, enable the Qos and move the p2p sharing to the down for making low priority.
I hope my late reply would help your friend