KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > ch > ethz > ssh2 > packets > PacketUserauthBanner


1 package ch.ethz.ssh2.packets;
2
3 import java.io.IOException JavaDoc;
4
5 /**
6  * PacketUserauthBanner.
7  *
8  * @author Christian Plattner, plattner@inf.ethz.ch
9  * @version $Id: PacketUserauthBanner.java,v 1.2 2005/08/24 17:54:08 cplattne Exp $
10  */

11 public class PacketUserauthBanner
12 {
13     byte[] payload;
14
15     String JavaDoc message;
16     String JavaDoc language;
17
18     public PacketUserauthBanner(String JavaDoc message, String JavaDoc language)
19     {
20         this.message = message;
21         this.language = language;
22     }
23
24     public String JavaDoc getBanner()
25     {
26         return message;
27     }
28     
29     public PacketUserauthBanner(byte payload[], int off, int len) throws IOException JavaDoc
30     {
31         this.payload = new byte[len];
32         System.arraycopy(payload, off, this.payload, 0, len);
33
34         TypesReader tr = new TypesReader(payload, off, len);
35
36         int packet_type = tr.readByte();
37
38         if (packet_type != Packets.SSH_MSG_USERAUTH_BANNER)
39             throw new IOException JavaDoc("This is not a SSH_MSG_USERAUTH_BANNER! (" + packet_type + ")");
40
41         message = tr.readString("UTF-8");
42         language = tr.readString();
43
44         if (tr.remain() != 0)
45             throw new IOException JavaDoc("Padding in SSH_MSG_USERAUTH_REQUEST packet!");
46     }
47
48     public byte[] getPayload()
49     {
50         if (payload == null)
51         {
52             TypesWriter tw = new TypesWriter();
53             tw.writeByte(Packets.SSH_MSG_USERAUTH_BANNER);
54             tw.writeString(message);
55             tw.writeString(language);
56             payload = tw.getBytes();
57         }
58         return payload;
59     }
60 }
61
Popular Tags