[Live-devel] Close specified client by IP

Li, Yin Hua SLC CT NKG S yinhua.li at siemens.com
Wed Sep 15 01:26:04 PDT 2010


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: live-devel-bounces at ns.live555.com
[mailto:live-devel-bounces at ns.live555.com] 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


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20100915/be4656a1/attachment-0001.html>


More information about the live-devel mailing list