java tftp_JAVA实现tftp服务端(二)-- tftpClientAgent.java

tftpClientAgent.java

=========================================

public class tftpClientAgent extends Thread {

public tftpClientAgent(InetAddress ip, int port, short opcode, String fname, String mode) {

this.m_ClientAddress = ip;

this.m_ClientPort = port;

this.m_curopcode = opcode;

this.m_filename = fname;

this.m_mode = mode;

}

public void run() {

int nfail = 100;

while (nfail-- > 0) {

//try getFreePort 100 times

try {

this.m_so_tftp = new DatagramSocket(this.getFreePort());

break;  //get a random port number

} catch (SocketException e) {

}

}

//ok, the UDP socket is ready, response to the client

switch (this.m_curopcode) {

case 1:

//RRQ

this.RRQ();

break;

case 2:

//WRQ

this.WRQ();

//System.out.println("debug: tftpClientAgent.run() --> a WRQ ended ...");

break;

}

this.m_so_tftp.close();

}

}

private InetAddress m_ClientAddress;    //ip of the client

private int m_ClientPort;   //port of the client

private DatagramSocket m_so_tftp;   //the socket object send or get message

private short m_curopcode; //the current opcode( wrq/rrq )

private String m_filename;

private String m_mode;

private final int m_MAX_nTimeOut = 5;

=========================================

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值