Thanks Ross, I just want to close client connection by IP address and not consider port number, because in our project not allowed more than one connection from the same IP address. After reading your reply, I'm sorry that I still don't know how to do this. I just got the client IP address that would be closed, according to your suggestion I must find the clientsession first, but how can I find its clientsession by this IP address?
________________________________ From: [email protected] [mailto:[email protected]] On Behalf Of Ross Finlayson Sent: Tuesday, September 14, 2010 6:03 AM To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] Close specified client by IP I have written a control panel to control Live555 VOD server, in this panel, administrator could see active connection's IP addresses, I want to close some specified connections by IP address, now the RTSPServer can receive these specified IP addresses, but how could I close these connections in RTSPServer.cpp? You can cleanly close a connection - within the "RTSPServer" - simply by deleting its "RTSPClientSession" object. Therefore, all you need is a way of mapping "client IP address"+"client port number" to "RTSPClientSession". (Note that just knowing the client's IP address is not enough, because it's possible for more than one connection to come from the same IP address. You will need to use the client's port number as well.) I suggest that you subclass "RTSPServer" to add a hash table that maps "client IP address"+"client port number" to "RTSPClientSession". Redefine the "createNewClientSession()" virtual function to add an entry into this hash table each time that you create a new "RTSPClientSession" object. Also, whenever you delete a "RTSPClientSession" object (to close its connection), remove the corresponding hash table entry. As always, you should be able to do this just via subclassing - without modifying any of the supplied "LIVE555" code. -- Ross Finlayson Live Networks, Inc. http://www.live555.com/ IMPORTANT NOTE: This e-mail and any attachment are confidential and may contain trade secrets and may also be legally privileged or otherwise protected from disclosure. If you have received it in error, you are herewith informed about its status. Please notify us immediately by reply e-mail and then delete this e-mail and any attachment from your system. You are prohibited from making use of or copying this e-mail or any attachment or disclosing the contents to any other person. In case you become aware of any unethical business behavior or violation of laws, particularly those against the Anti-corruption laws and Anti-trust laws, Siemens Compliance HelpDesk "Tell us" can be reached at www.siemens.com.cn/compliancehelpdesk <Disclaimer in Chinese below, characters may not be displayed correctly.> ????:???????????,???????????????????????????,????????????,?????????????????????????????????????,?????????????????????????????? ?????????????????,?????????????????,????????????"Tell us"??,???www.siemens.com.cn/compliancehelpdesk
_______________________________________________ live-devel mailing list [email protected] http://lists.live555.com/mailman/listinfo/live-devel
