Re: [Openchat-devel] Stress testing for openchat
Status: Beta
Brought to you by:
diego_de_lima
|
From: Jing Xu <rob...@gm...> - 2013-09-02 16:23:27
|
On Fri, Aug 23, 2013 at 7:52 PM, Jing Xu <rob...@gm...> wrote:
> Hi,
>
> My name is Jing Xu. I am a student from University of Texas at Arlington,
> United States.
>
> I am developing a software testing tool to detect thread stress
> vulnerability of server application. And our tool detects the vulnerability
> on your openchat in following main function:
>
>
> public static void main(String a[]) throws Exception {
>
> loadProps();
>
> printProps();
>
> int port=Integer.parseInt(getProperty("CHAT_SERVER_PORT"));
>
> if (a.length > 0) port=Integer.parseInt(a[0]);
>
> for (int i=0; i < Integer.parseInt(getProperty("CHAT_SERVER_WORKERS"));
> i++) {
>
> Worker w=new Worker();
>
> (new Thread(w,"worker #" + i)).start();
>
> threads.addElement(w);
>
> }
>
> try {
>
> ServerSocket ss=new ServerSocket(port);
>
> do {
>
> java.net.Socket s=ss.accept();
>
> Worker w=null;
>
> synchronized (threads) {
>
> if (threads.isEmpty()) {
>
> Worker ws=new Worker();
>
> ws.setSocket(s);
>
> (new Thread(ws,"additional worker")).start();
>
> }
>
> else {
>
> w=(Worker)threads.elementAt(0);
>
> threads.removeElementAt(0);
>
> w.setSocket(s);
>
> }
>
> }
>
> }
>
> while (true);
>
> }
>
> catch ( BindException e) {
>
> p("Could not open the ServerSocket. Propably the address (port:" +
> port + ") is already in use.");
>
> }
>
> System.exit(1);
>
> }
>
> Is it possible that worker will be created with unbounded times? Thanks
> advanced for your help.
>
> Best,
> Jing
>
|