148ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood/*
248ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood * Copyright (c) 2006-2011 Christian Plattner. All rights reserved.
348ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood * Please refer to the LICENSE.txt for licensing details.
448ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood */
548ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwoodpackage ch.ethz.ssh2.packets;
648ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood
748ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood/**
848ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood * PacketGlobalCancelForwardRequest.
948ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood *
1048ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood * @author Christian Plattner
1148ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood * @version 2.50, 03/15/10
1248ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood */
1348ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwoodpublic class PacketGlobalCancelForwardRequest
1448ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood{
1548ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood	byte[] payload;
1648ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood
1748ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood	public boolean wantReply;
1848ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood	public String bindAddress;
1948ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood	public int bindPort;
2048ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood
2148ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood	public PacketGlobalCancelForwardRequest(boolean wantReply, String bindAddress, int bindPort)
2248ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood	{
2348ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood		this.wantReply = wantReply;
2448ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood		this.bindAddress = bindAddress;
2548ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood		this.bindPort = bindPort;
2648ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood	}
2748ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood
2848ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood	public byte[] getPayload()
2948ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood	{
3048ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood		if (payload == null)
3148ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood		{
3248ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood			TypesWriter tw = new TypesWriter();
3348ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood			tw.writeByte(Packets.SSH_MSG_GLOBAL_REQUEST);
3448ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood
3548ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood			tw.writeString("cancel-tcpip-forward");
3648ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood			tw.writeBoolean(wantReply);
3748ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood			tw.writeString(bindAddress);
3848ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood			tw.writeUINT32(bindPort);
3948ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood
4048ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood			payload = tw.getBytes();
4148ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood		}
4248ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood		return payload;
4348ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood	}
4448ded2421114c4c87ef3f8005c9f793a5d077cbdMike Lockwood}
45