forked from KNEMC/KLALB
KLALB V3.6.0 写了一半
This commit is contained in:
@@ -9,24 +9,23 @@ import java.net.Inet6Address;
|
||||
import java.net.UnknownHostException;
|
||||
import java.nio.ByteBuffer;
|
||||
|
||||
import org.kne.cloud.network.ipv6.Inet6AddressGroup;
|
||||
import org.kne.cloud.network.ipv6.IPv6Address;
|
||||
import org.kne.cloud.network.ipv6.IPv6AddressGroup;
|
||||
|
||||
public class VADDRPacket extends KLALBPacket {
|
||||
private static final int HEADER_LENGTH=18;
|
||||
public Inet6AddressGroup getVaddr() {
|
||||
byte[]b=new byte[16];
|
||||
klalbHeader.get(1, b);
|
||||
try {
|
||||
return new Inet6AddressGroup( (Inet6Address) Inet6Address.getByAddress(b),klalbHeader.get(17)&0xff);
|
||||
} catch (UnknownHostException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
public IPv6AddressGroup getVaddr() {
|
||||
long high=klalbHeader.getLong(1);
|
||||
long low=klalbHeader.getLong(9);
|
||||
int perf=klalbHeader.get(17)&0xff;
|
||||
|
||||
return new IPv6AddressGroup(new IPv6Address(high, low), perf);
|
||||
}
|
||||
|
||||
public VADDRPacket(Inet6AddressGroup vaddr) {
|
||||
public VADDRPacket(IPv6AddressGroup vaddr) {
|
||||
super(VADDR,HEADER_LENGTH);
|
||||
klalbHeader.put(1, vaddr.getAddress().getAddress());
|
||||
klalbHeader.putLong(1, vaddr.getAddress().getHigh());
|
||||
klalbHeader.putLong(9, vaddr.getAddress().getLow());
|
||||
klalbHeader.put(17,(byte) vaddr.getPrefixLength());
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user