# File lib/net/ssh/test/packet.rb, line 58
58:     def types
59:       @types ||= case @type
60:         when KEXINIT then 
61:           [:long, :long, :long, :long,
62:            :string, :string, :string, :string, :string, :string, :string, :string, :string, :string,
63:            :bool]
64:         when NEWKEYS then []
65:         when CHANNEL_OPEN then [:string, :long, :long, :long]
66:         when CHANNEL_OPEN_CONFIRMATION then [:long, :long, :long, :long]
67:         when CHANNEL_DATA then [:long, :string]
68:         when CHANNEL_EOF, CHANNEL_CLOSE, CHANNEL_SUCCESS, CHANNEL_FAILURE then [:long]
69:         when CHANNEL_REQUEST
70:           parts = [:long, :string, :bool]
71:           case @data[1]
72:           when "exec", "subsystem" then parts << :string
73:           when "exit-status" then parts << :long
74:           else raise "don't know what to do about #{@data[1]} channel request"
75:           end
76:         else raise "don't know how to parse packet type #{@type}"
77:         end
78:     end