Exemple #1
0
        /*
         * // public string Data { get; set; }
         *
         * // TODO - HACK - RFC 4254 specifies that the channel data is a string. But it looks like SFTP treats the data as binary...
         *
         * public uint Length { get; set; }
         * public uint FxpLength { get; set; }
         * public byte Type { get; set; }
         * public byte[] RawData { get; set; }
         *
         * public uint Version { get; set; }
         */


        public override void Load(ByteReader reader)
        {
            RecipientChannel = reader.GetUInt32();

            var length = (int)reader.GetUInt32();

            Data = reader.GetBytes(length);

            /*
             * Length = reader.GetUInt32();    // Length of the data area
             * FxpLength = reader.GetUInt32(); // Length of the SFTP sub-area
             * Type = reader.GetByte();
             *
             * // TODO - clean up this mess
             *
             * RawData = reader.GetBytes((int)(FxpLength - 1));      // -1 as we've already read the Type
             *
             * using (var subreader = new ByteReader(RawData))
             * {
             *  // TODO - enum - SSH_FXP_INIT
             *  if (Type == 1)
             *  {
             *      Version = subreader.GetUInt32();
             *
             *      // TODO - extension data?
             *  }
             * }
             */
        }
Exemple #2
0
        private static BoneMotion GetBoneMotion(ByteReader io)
        {
            // ?
            var motion=new BoneMotion();

            motion.BoneName=io.GetSJIS(15);
            motion.FrameNum=io.GetUInt();
            motion.Position=io.GetVector3();
            motion.Rotation=io.GetVector4();

            var bezierParams=new byte[64];
            io.GetBytes(ref bezierParams);

            return motion;
        }
Exemple #3
0
 public override void Load(ByteReader reader)
 {
     Cookie                              = reader.GetBytes(16);
     KexAlgorithms                       = reader.GetNameList();
     ServerHostKeyAlgorithms             = reader.GetNameList();
     EncryptionAlgorithmsClientToServer  = reader.GetNameList();
     EncryptionAlgorithmsServerToClient  = reader.GetNameList();
     MacAlgorithmsClientToServer         = reader.GetNameList();
     MacAlgorithmsServerToClient         = reader.GetNameList();
     CompressionAlgorithmsClientToServer = reader.GetNameList();
     CompressionAlgorithmsServerToClient = reader.GetNameList();
     LanguagesClientToServer             = reader.GetNameList();
     LanguagesServerToClient             = reader.GetNameList();
     FirstKexPacketFollows               = reader.GetBoolean();
     uint reserved = reader.GetUInt32();
 }