// Copyright IBM Corp. 2020, 2026
// SPDX-License-Identifier: BUSL-1.1

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.11
// 	protoc        (unknown)
// source: ssh/v1/ssh_chunks.proto

package sshv1

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

// An UnknownRequest is an unrecognized SSH request. We'll record the type, want_reply, and payload
type UnknownRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// The Payload field on the SSH request
	Data          []byte `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *UnknownRequest) Reset() {
	*x = UnknownRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *UnknownRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UnknownRequest) ProtoMessage() {}

func (x *UnknownRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UnknownRequest.ProtoReflect.Descriptor instead.
func (*UnknownRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{0}
}

func (x *UnknownRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *UnknownRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *UnknownRequest) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

// A session is started by sending the following message.
type SessionRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "session"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The sender channel
	SenderChannel uint32 `protobuf:"varint,2,opt,name=sender_channel,json=senderChannel,proto3" json:"sender_channel,omitempty"`
	// The initial window size
	InitialWindowSize uint32 `protobuf:"varint,3,opt,name=initial_window_size,json=initialWindowSize,proto3" json:"initial_window_size,omitempty"`
	// The maximum packet size
	MaximumPacketSize uint32 `protobuf:"varint,4,opt,name=maximum_packet_size,json=maximumPacketSize,proto3" json:"maximum_packet_size,omitempty"`
	unknownFields     protoimpl.UnknownFields
	sizeCache         protoimpl.SizeCache
}

func (x *SessionRequest) Reset() {
	*x = SessionRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SessionRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SessionRequest) ProtoMessage() {}

func (x *SessionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SessionRequest.ProtoReflect.Descriptor instead.
func (*SessionRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{1}
}

func (x *SessionRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *SessionRequest) GetSenderChannel() uint32 {
	if x != nil {
		return x.SenderChannel
	}
	return 0
}

func (x *SessionRequest) GetInitialWindowSize() uint32 {
	if x != nil {
		return x.InitialWindowSize
	}
	return 0
}

func (x *SessionRequest) GetMaximumPacketSize() uint32 {
	if x != nil {
		return x.MaximumPacketSize
	}
	return 0
}

// X11 channels are opened with a channel open request.  The resulting
// channels are independent of the session, and closing the session
// channel does not close the forwarded X11 channels.
type X11Request struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "x11"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The sender channel
	SenderChannel uint32 `protobuf:"varint,2,opt,name=sender_channel,json=senderChannel,proto3" json:"sender_channel,omitempty"`
	// The initial window size
	InitialWindowSize uint32 `protobuf:"varint,3,opt,name=initial_window_size,json=initialWindowSize,proto3" json:"initial_window_size,omitempty"`
	// The maximum packet size
	MaximumPacketSize uint32 `protobuf:"varint,4,opt,name=maximum_packet_size,json=maximumPacketSize,proto3" json:"maximum_packet_size,omitempty"`
	// The originator address (e.g., "192.168.7.38")
	OriginatorAddress string `protobuf:"bytes,5,opt,name=originator_address,json=originatorAddress,proto3" json:"originator_address,omitempty"`
	// The originator port
	OriginatorPort uint32 `protobuf:"varint,6,opt,name=originator_port,json=originatorPort,proto3" json:"originator_port,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *X11Request) Reset() {
	*x = X11Request{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *X11Request) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*X11Request) ProtoMessage() {}

func (x *X11Request) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[2]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use X11Request.ProtoReflect.Descriptor instead.
func (*X11Request) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{2}
}

func (x *X11Request) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *X11Request) GetSenderChannel() uint32 {
	if x != nil {
		return x.SenderChannel
	}
	return 0
}

func (x *X11Request) GetInitialWindowSize() uint32 {
	if x != nil {
		return x.InitialWindowSize
	}
	return 0
}

func (x *X11Request) GetMaximumPacketSize() uint32 {
	if x != nil {
		return x.MaximumPacketSize
	}
	return 0
}

func (x *X11Request) GetOriginatorAddress() string {
	if x != nil {
		return x.OriginatorAddress
	}
	return ""
}

func (x *X11Request) GetOriginatorPort() uint32 {
	if x != nil {
		return x.OriginatorPort
	}
	return 0
}

// When a connection comes to a port for which remote forwarding has
// been requested, a channel is opened to forward the port to the other
// side.
type ForwardedTCPIPRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "forwarded-tcpip"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The sender channel
	SenderChannel uint32 `protobuf:"varint,2,opt,name=sender_channel,json=senderChannel,proto3" json:"sender_channel,omitempty"`
	// The initial window size
	InitialWindowSize uint32 `protobuf:"varint,3,opt,name=initial_window_size,json=initialWindowSize,proto3" json:"initial_window_size,omitempty"`
	// The maximum packet size
	MaximumPacketSize uint32 `protobuf:"varint,4,opt,name=maximum_packet_size,json=maximumPacketSize,proto3" json:"maximum_packet_size,omitempty"`
	// The address that was connected
	Address string `protobuf:"bytes,5,opt,name=address,proto3" json:"address,omitempty"`
	// The port that was connected
	Port uint32 `protobuf:"varint,6,opt,name=port,proto3" json:"port,omitempty"`
	// The originator ip address (e.g., "192.168.7.38")
	OriginatorIpAddress string `protobuf:"bytes,7,opt,name=originator_ip_address,json=originatorIpAddress,proto3" json:"originator_ip_address,omitempty"`
	// The originator port
	OriginatorPort uint32 `protobuf:"varint,8,opt,name=originator_port,json=originatorPort,proto3" json:"originator_port,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *ForwardedTCPIPRequest) Reset() {
	*x = ForwardedTCPIPRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ForwardedTCPIPRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ForwardedTCPIPRequest) ProtoMessage() {}

func (x *ForwardedTCPIPRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[3]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ForwardedTCPIPRequest.ProtoReflect.Descriptor instead.
func (*ForwardedTCPIPRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{3}
}

func (x *ForwardedTCPIPRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *ForwardedTCPIPRequest) GetSenderChannel() uint32 {
	if x != nil {
		return x.SenderChannel
	}
	return 0
}

func (x *ForwardedTCPIPRequest) GetInitialWindowSize() uint32 {
	if x != nil {
		return x.InitialWindowSize
	}
	return 0
}

func (x *ForwardedTCPIPRequest) GetMaximumPacketSize() uint32 {
	if x != nil {
		return x.MaximumPacketSize
	}
	return 0
}

func (x *ForwardedTCPIPRequest) GetAddress() string {
	if x != nil {
		return x.Address
	}
	return ""
}

func (x *ForwardedTCPIPRequest) GetPort() uint32 {
	if x != nil {
		return x.Port
	}
	return 0
}

func (x *ForwardedTCPIPRequest) GetOriginatorIpAddress() string {
	if x != nil {
		return x.OriginatorIpAddress
	}
	return ""
}

func (x *ForwardedTCPIPRequest) GetOriginatorPort() uint32 {
	if x != nil {
		return x.OriginatorPort
	}
	return 0
}

// When a connection comes to a locally forwarded TCP/IP port, the
// following packet is sent to the other side.
type DirectTCPIPRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "direct-tcpip"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The sender channel
	SenderChannel uint32 `protobuf:"varint,2,opt,name=sender_channel,json=senderChannel,proto3" json:"sender_channel,omitempty"`
	// The initial window size
	InitialWindowSize uint32 `protobuf:"varint,3,opt,name=initial_window_size,json=initialWindowSize,proto3" json:"initial_window_size,omitempty"`
	// The maximum packet size
	MaximumPacketSize uint32 `protobuf:"varint,4,opt,name=maximum_packet_size,json=maximumPacketSize,proto3" json:"maximum_packet_size,omitempty"`
	// The host to connect
	Host string `protobuf:"bytes,5,opt,name=host,proto3" json:"host,omitempty"`
	// The port to connect
	Port uint32 `protobuf:"varint,6,opt,name=port,proto3" json:"port,omitempty"`
	// The 'originator IP address' is the numeric IP address of the machine
	// from where the connection request originates
	OriginatorIpAddress string `protobuf:"bytes,7,opt,name=originator_ip_address,json=originatorIpAddress,proto3" json:"originator_ip_address,omitempty"`
	// The port on the host from where the connection originated.
	OriginatorPort uint32 `protobuf:"varint,8,opt,name=originator_port,json=originatorPort,proto3" json:"originator_port,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *DirectTCPIPRequest) Reset() {
	*x = DirectTCPIPRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DirectTCPIPRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DirectTCPIPRequest) ProtoMessage() {}

func (x *DirectTCPIPRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[4]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DirectTCPIPRequest.ProtoReflect.Descriptor instead.
func (*DirectTCPIPRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{4}
}

func (x *DirectTCPIPRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *DirectTCPIPRequest) GetSenderChannel() uint32 {
	if x != nil {
		return x.SenderChannel
	}
	return 0
}

func (x *DirectTCPIPRequest) GetInitialWindowSize() uint32 {
	if x != nil {
		return x.InitialWindowSize
	}
	return 0
}

func (x *DirectTCPIPRequest) GetMaximumPacketSize() uint32 {
	if x != nil {
		return x.MaximumPacketSize
	}
	return 0
}

func (x *DirectTCPIPRequest) GetHost() string {
	if x != nil {
		return x.Host
	}
	return ""
}

func (x *DirectTCPIPRequest) GetPort() uint32 {
	if x != nil {
		return x.Port
	}
	return 0
}

func (x *DirectTCPIPRequest) GetOriginatorIpAddress() string {
	if x != nil {
		return x.OriginatorIpAddress
	}
	return ""
}

func (x *DirectTCPIPRequest) GetOriginatorPort() uint32 {
	if x != nil {
		return x.OriginatorPort
	}
	return 0
}

// A pseudo-terminal can be allocated for the session by sending the
// following message.
type PtyRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "pty-req"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// TERM environment variable value (e.g., vt100)
	TermEnvVar string `protobuf:"bytes,3,opt,name=term_env_var,json=termEnvVar,proto3" json:"term_env_var,omitempty"`
	// Terminal width, characters (e.g., 80)
	TerminalWidthCharacters uint32 `protobuf:"varint,4,opt,name=terminal_width_characters,json=terminalWidthCharacters,proto3" json:"terminal_width_characters,omitempty"`
	// Terminal height, rows (e.g., 24)
	TerminalHeightRows uint32 `protobuf:"varint,5,opt,name=terminal_height_rows,json=terminalHeightRows,proto3" json:"terminal_height_rows,omitempty"`
	// Terminal width, pixels (e.g., 640)
	TerminalWidthPixels uint32 `protobuf:"varint,6,opt,name=terminal_width_pixels,json=terminalWidthPixels,proto3" json:"terminal_width_pixels,omitempty"`
	// Terminal height, pixels (e.g., 480)
	TerminalHeightPixels uint32 `protobuf:"varint,7,opt,name=terminal_height_pixels,json=terminalHeightPixels,proto3" json:"terminal_height_pixels,omitempty"`
	// Encoded terminal modes
	EncodedTerminalMode []byte `protobuf:"bytes,8,opt,name=encoded_terminal_mode,json=encodedTerminalMode,proto3" json:"encoded_terminal_mode,omitempty"`
	unknownFields       protoimpl.UnknownFields
	sizeCache           protoimpl.SizeCache
}

func (x *PtyRequest) Reset() {
	*x = PtyRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[5]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *PtyRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PtyRequest) ProtoMessage() {}

func (x *PtyRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[5]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PtyRequest.ProtoReflect.Descriptor instead.
func (*PtyRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{5}
}

func (x *PtyRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *PtyRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *PtyRequest) GetTermEnvVar() string {
	if x != nil {
		return x.TermEnvVar
	}
	return ""
}

func (x *PtyRequest) GetTerminalWidthCharacters() uint32 {
	if x != nil {
		return x.TerminalWidthCharacters
	}
	return 0
}

func (x *PtyRequest) GetTerminalHeightRows() uint32 {
	if x != nil {
		return x.TerminalHeightRows
	}
	return 0
}

func (x *PtyRequest) GetTerminalWidthPixels() uint32 {
	if x != nil {
		return x.TerminalWidthPixels
	}
	return 0
}

func (x *PtyRequest) GetTerminalHeightPixels() uint32 {
	if x != nil {
		return x.TerminalHeightPixels
	}
	return 0
}

func (x *PtyRequest) GetEncodedTerminalMode() []byte {
	if x != nil {
		return x.EncodedTerminalMode
	}
	return nil
}

// X11 forwarding may be requested for a session using the following message
type X11ForwardingRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "x11-req"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// Single connection
	SingleConnection bool `protobuf:"varint,3,opt,name=single_connection,json=singleConnection,proto3" json:"single_connection,omitempty"`
	// X11 authentication protocol
	X11AuthenticationProtocol string `protobuf:"bytes,4,opt,name=x11_authentication_protocol,json=x11AuthenticationProtocol,proto3" json:"x11_authentication_protocol,omitempty"`
	// X11 authentication cookie
	X11AuthenticationCookie string `protobuf:"bytes,5,opt,name=x11_authentication_cookie,json=x11AuthenticationCookie,proto3" json:"x11_authentication_cookie,omitempty"`
	// X11 screen number
	X11ScreenNumber uint32 `protobuf:"varint,6,opt,name=x11_screen_number,json=x11ScreenNumber,proto3" json:"x11_screen_number,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

func (x *X11ForwardingRequest) Reset() {
	*x = X11ForwardingRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[6]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *X11ForwardingRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*X11ForwardingRequest) ProtoMessage() {}

func (x *X11ForwardingRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[6]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use X11ForwardingRequest.ProtoReflect.Descriptor instead.
func (*X11ForwardingRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{6}
}

func (x *X11ForwardingRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *X11ForwardingRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *X11ForwardingRequest) GetSingleConnection() bool {
	if x != nil {
		return x.SingleConnection
	}
	return false
}

func (x *X11ForwardingRequest) GetX11AuthenticationProtocol() string {
	if x != nil {
		return x.X11AuthenticationProtocol
	}
	return ""
}

func (x *X11ForwardingRequest) GetX11AuthenticationCookie() string {
	if x != nil {
		return x.X11AuthenticationCookie
	}
	return ""
}

func (x *X11ForwardingRequest) GetX11ScreenNumber() uint32 {
	if x != nil {
		return x.X11ScreenNumber
	}
	return 0
}

// Environment variables may be passed to the shell/command to be
// started later.
type EnvRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "env"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// Variable name
	VariableName string `protobuf:"bytes,3,opt,name=variable_name,json=variableName,proto3" json:"variable_name,omitempty"`
	// Variable value
	VariableValue string `protobuf:"bytes,4,opt,name=variable_value,json=variableValue,proto3" json:"variable_value,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *EnvRequest) Reset() {
	*x = EnvRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[7]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *EnvRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*EnvRequest) ProtoMessage() {}

func (x *EnvRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[7]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use EnvRequest.ProtoReflect.Descriptor instead.
func (*EnvRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{7}
}

func (x *EnvRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *EnvRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *EnvRequest) GetVariableName() string {
	if x != nil {
		return x.VariableName
	}
	return ""
}

func (x *EnvRequest) GetVariableValue() string {
	if x != nil {
		return x.VariableValue
	}
	return ""
}

// This message will request that the user's default shell (typically
// defined in /etc/passwd in UNIX systems) be started at the other end.
type ShellRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "shell"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request
	WantReply     bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ShellRequest) Reset() {
	*x = ShellRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[8]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ShellRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShellRequest) ProtoMessage() {}

func (x *ShellRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[8]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ShellRequest.ProtoReflect.Descriptor instead.
func (*ShellRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{8}
}

func (x *ShellRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *ShellRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

// This message will request that the server start the execution of the
// given command.  The 'command' string may contain a path.
type ExecRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "exec"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// The command to be executed
	Command       string `protobuf:"bytes,3,opt,name=command,proto3" json:"command,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ExecRequest) Reset() {
	*x = ExecRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[9]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ExecRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExecRequest) ProtoMessage() {}

func (x *ExecRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[9]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExecRequest.ProtoReflect.Descriptor instead.
func (*ExecRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{9}
}

func (x *ExecRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *ExecRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *ExecRequest) GetCommand() string {
	if x != nil {
		return x.Command
	}
	return ""
}

// Execute a predefined subsystem. It is expected that
// these will include a general file transfer mechanism, and possibly
// other features.
type SubsystemRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "subsystem"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// The predefined subsystem to execute
	SubsystemName string `protobuf:"bytes,3,opt,name=subsystem_name,json=subsystemName,proto3" json:"subsystem_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SubsystemRequest) Reset() {
	*x = SubsystemRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[10]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SubsystemRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SubsystemRequest) ProtoMessage() {}

func (x *SubsystemRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[10]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SubsystemRequest.ProtoReflect.Descriptor instead.
func (*SubsystemRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{10}
}

func (x *SubsystemRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *SubsystemRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *SubsystemRequest) GetSubsystemName() string {
	if x != nil {
		return x.SubsystemName
	}
	return ""
}

// When the window (terminal) size changes on the client side, it MAY
// send a message to the other side to inform it of the new dimensions.
type WindowChangeRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "window-change"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request. This should always be false.
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// Terminal width, columns
	TerminalWidthColumns uint32 `protobuf:"varint,3,opt,name=terminal_width_columns,json=terminalWidthColumns,proto3" json:"terminal_width_columns,omitempty"`
	// Terminal height, rows
	TerminalHeightRows uint32 `protobuf:"varint,4,opt,name=terminal_height_rows,json=terminalHeightRows,proto3" json:"terminal_height_rows,omitempty"`
	// Terminal width, pixels
	TerminalWidthPixels uint32 `protobuf:"varint,5,opt,name=terminal_width_pixels,json=terminalWidthPixels,proto3" json:"terminal_width_pixels,omitempty"`
	// Terminal height, pixels
	TerminalHeightPixels uint32 `protobuf:"varint,6,opt,name=terminal_height_pixels,json=terminalHeightPixels,proto3" json:"terminal_height_pixels,omitempty"`
	unknownFields        protoimpl.UnknownFields
	sizeCache            protoimpl.SizeCache
}

func (x *WindowChangeRequest) Reset() {
	*x = WindowChangeRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[11]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *WindowChangeRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WindowChangeRequest) ProtoMessage() {}

func (x *WindowChangeRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[11]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WindowChangeRequest.ProtoReflect.Descriptor instead.
func (*WindowChangeRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{11}
}

func (x *WindowChangeRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *WindowChangeRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *WindowChangeRequest) GetTerminalWidthColumns() uint32 {
	if x != nil {
		return x.TerminalWidthColumns
	}
	return 0
}

func (x *WindowChangeRequest) GetTerminalHeightRows() uint32 {
	if x != nil {
		return x.TerminalHeightRows
	}
	return 0
}

func (x *WindowChangeRequest) GetTerminalWidthPixels() uint32 {
	if x != nil {
		return x.TerminalWidthPixels
	}
	return 0
}

func (x *WindowChangeRequest) GetTerminalHeightPixels() uint32 {
	if x != nil {
		return x.TerminalHeightPixels
	}
	return 0
}

// The message below is used by the server to inform the client when it
// can or cannot perform flow control (control-S/control-Q processing).
// If 'client can do' is TRUE, the client is allowed to do flow control
// using control-S and control-Q
type XonXoffRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "xon-xoff"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request. This should always be false.
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// Client can do flow control
	ClientCanDo   bool `protobuf:"varint,3,opt,name=client_can_do,json=clientCanDo,proto3" json:"client_can_do,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *XonXoffRequest) Reset() {
	*x = XonXoffRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[12]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *XonXoffRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*XonXoffRequest) ProtoMessage() {}

func (x *XonXoffRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[12]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use XonXoffRequest.ProtoReflect.Descriptor instead.
func (*XonXoffRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{12}
}

func (x *XonXoffRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *XonXoffRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *XonXoffRequest) GetClientCanDo() bool {
	if x != nil {
		return x.ClientCanDo
	}
	return false
}

// A signal can be delivered to the remote process/service using the
// following message.
type SignalRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "signal"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request. This should always be false
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// Signal name, without the SIG prefix. The 'signal name' is one of the following (these are from [POSIX]).
	//
	//	ABRT   ALRM   FPE   HUP   ILL   INT   KILL
	//	PIPE   QUIT   SEGV  TERM  USR1  USR2
	SignalName    string `protobuf:"bytes,3,opt,name=signal_name,json=signalName,proto3" json:"signal_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SignalRequest) Reset() {
	*x = SignalRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[13]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SignalRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SignalRequest) ProtoMessage() {}

func (x *SignalRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[13]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SignalRequest.ProtoReflect.Descriptor instead.
func (*SignalRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{13}
}

func (x *SignalRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *SignalRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *SignalRequest) GetSignalName() string {
	if x != nil {
		return x.SignalName
	}
	return ""
}

// When the command running at the other end terminates, the following
//
//	message can be sent to return the exit status of the command.
type ExitStatusRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "exit-status"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request. This should always be false.
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// Exit status of the command
	ExitStatus    uint32 `protobuf:"varint,3,opt,name=exit_status,json=exitStatus,proto3" json:"exit_status,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ExitStatusRequest) Reset() {
	*x = ExitStatusRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[14]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ExitStatusRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExitStatusRequest) ProtoMessage() {}

func (x *ExitStatusRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[14]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExitStatusRequest.ProtoReflect.Descriptor instead.
func (*ExitStatusRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{14}
}

func (x *ExitStatusRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *ExitStatusRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *ExitStatusRequest) GetExitStatus() uint32 {
	if x != nil {
		return x.ExitStatus
	}
	return 0
}

// The remote command may terminate violently due to a signal.
// Such a condition can be indicated by the following message.  A zero
// 'exit_status' usually means that the command terminated successfully.
type ExitSignalRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "exit-signal"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request. This should always be false.
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// Signal name, without the SIG prefix. The 'signal name' is one of the following (these are from [POSIX]).
	//
	//	ABRT   ALRM   FPE   HUP   ILL   INT   KILL
	//	PIPE   QUIT   SEGV  TERM  USR1  USR2
	SignalName string `protobuf:"bytes,3,opt,name=signal_name,json=signalName,proto3" json:"signal_name,omitempty"`
	// Core dumped
	CoreDumped bool `protobuf:"varint,4,opt,name=core_dumped,json=coreDumped,proto3" json:"core_dumped,omitempty"`
	// Error message in ISO-10646 UTF-8 encoding
	ErrorMessage string `protobuf:"bytes,5,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`
	// Language tag from https://www.rfc-editor.org/rfc/rfc3066
	LanguageTag   string `protobuf:"bytes,6,opt,name=language_tag,json=languageTag,proto3" json:"language_tag,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ExitSignalRequest) Reset() {
	*x = ExitSignalRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[15]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ExitSignalRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExitSignalRequest) ProtoMessage() {}

func (x *ExitSignalRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[15]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExitSignalRequest.ProtoReflect.Descriptor instead.
func (*ExitSignalRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{15}
}

func (x *ExitSignalRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *ExitSignalRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *ExitSignalRequest) GetSignalName() string {
	if x != nil {
		return x.SignalName
	}
	return ""
}

func (x *ExitSignalRequest) GetCoreDumped() bool {
	if x != nil {
		return x.CoreDumped
	}
	return false
}

func (x *ExitSignalRequest) GetErrorMessage() string {
	if x != nil {
		return x.ErrorMessage
	}
	return ""
}

func (x *ExitSignalRequest) GetLanguageTag() string {
	if x != nil {
		return x.LanguageTag
	}
	return ""
}

// The following channel-specific request can be sent over a session
// channel to request that the remote host perform
// a BREAK operation.
type BreakRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "break"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request. This should always be false.
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// Break-length in milliseconds
	BreakLengthMs uint32 `protobuf:"varint,3,opt,name=break_length_ms,json=breakLengthMs,proto3" json:"break_length_ms,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *BreakRequest) Reset() {
	*x = BreakRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[16]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *BreakRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BreakRequest) ProtoMessage() {}

func (x *BreakRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[16]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BreakRequest.ProtoReflect.Descriptor instead.
func (*BreakRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{16}
}

func (x *BreakRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *BreakRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *BreakRequest) GetBreakLengthMs() uint32 {
	if x != nil {
		return x.BreakLengthMs
	}
	return 0
}

// A party need not explicitly request forwardings from its own end to
// the other direction.  However, if it wishes that connections to a
// port on the other side be forwarded to the local side, it must
// explicitly request this.
type TCPIPForwardRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "tcpip-forward"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request. This should always be false.
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// Address to bind (e.g., "0.0.0.0") on which connections for forwarding
	// are to be accepted
	AddressToBind string `protobuf:"bytes,3,opt,name=address_to_bind,json=addressToBind,proto3" json:"address_to_bind,omitempty"`
	// Port number to bind on which connections for forwarding
	// are to be accepted
	PortToBind    uint32 `protobuf:"varint,4,opt,name=port_to_bind,json=portToBind,proto3" json:"port_to_bind,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *TCPIPForwardRequest) Reset() {
	*x = TCPIPForwardRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[17]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *TCPIPForwardRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TCPIPForwardRequest) ProtoMessage() {}

func (x *TCPIPForwardRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[17]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TCPIPForwardRequest.ProtoReflect.Descriptor instead.
func (*TCPIPForwardRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{17}
}

func (x *TCPIPForwardRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *TCPIPForwardRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *TCPIPForwardRequest) GetAddressToBind() string {
	if x != nil {
		return x.AddressToBind
	}
	return ""
}

func (x *TCPIPForwardRequest) GetPortToBind() uint32 {
	if x != nil {
		return x.PortToBind
	}
	return 0
}

// A port forwarding can be canceled with the following message.  Note
// that channel open requests may be received until a reply to this
// message is received.
type CancelTCPIPForwardRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The request type field. This should always be "cancel-tcpip-forward"
	RequestType string `protobuf:"bytes,1,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`
	// The want_reply field on the SSH request. This should always be false.
	WantReply bool `protobuf:"varint,2,opt,name=want_reply,json=wantReply,proto3" json:"want_reply,omitempty"`
	// Address to bind (e.g., "0.0.0.0") on which connections for forwarding
	// are to be accepted
	AddressToBind string `protobuf:"bytes,3,opt,name=address_to_bind,json=addressToBind,proto3" json:"address_to_bind,omitempty"`
	// Port number to bind on which connections for forwarding
	// are to be accepted
	PortToBind    uint32 `protobuf:"varint,4,opt,name=port_to_bind,json=portToBind,proto3" json:"port_to_bind,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CancelTCPIPForwardRequest) Reset() {
	*x = CancelTCPIPForwardRequest{}
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[18]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *CancelTCPIPForwardRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CancelTCPIPForwardRequest) ProtoMessage() {}

func (x *CancelTCPIPForwardRequest) ProtoReflect() protoreflect.Message {
	mi := &file_ssh_v1_ssh_chunks_proto_msgTypes[18]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CancelTCPIPForwardRequest.ProtoReflect.Descriptor instead.
func (*CancelTCPIPForwardRequest) Descriptor() ([]byte, []int) {
	return file_ssh_v1_ssh_chunks_proto_rawDescGZIP(), []int{18}
}

func (x *CancelTCPIPForwardRequest) GetRequestType() string {
	if x != nil {
		return x.RequestType
	}
	return ""
}

func (x *CancelTCPIPForwardRequest) GetWantReply() bool {
	if x != nil {
		return x.WantReply
	}
	return false
}

func (x *CancelTCPIPForwardRequest) GetAddressToBind() string {
	if x != nil {
		return x.AddressToBind
	}
	return ""
}

func (x *CancelTCPIPForwardRequest) GetPortToBind() uint32 {
	if x != nil {
		return x.PortToBind
	}
	return 0
}

var File_ssh_v1_ssh_chunks_proto protoreflect.FileDescriptor

const file_ssh_v1_ssh_chunks_proto_rawDesc = "" +
	"\n" +
	"\x17ssh/v1/ssh_chunks.proto\x12\x06ssh.v1\"f\n" +
	"\x0eUnknownRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x12\x12\n" +
	"\x04data\x18\x03 \x01(\fR\x04data\"\xba\x01\n" +
	"\x0eSessionRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12%\n" +
	"\x0esender_channel\x18\x02 \x01(\rR\rsenderChannel\x12.\n" +
	"\x13initial_window_size\x18\x03 \x01(\rR\x11initialWindowSize\x12.\n" +
	"\x13maximum_packet_size\x18\x04 \x01(\rR\x11maximumPacketSize\"\x8e\x02\n" +
	"\n" +
	"X11Request\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12%\n" +
	"\x0esender_channel\x18\x02 \x01(\rR\rsenderChannel\x12.\n" +
	"\x13initial_window_size\x18\x03 \x01(\rR\x11initialWindowSize\x12.\n" +
	"\x13maximum_packet_size\x18\x04 \x01(\rR\x11maximumPacketSize\x12-\n" +
	"\x12originator_address\x18\x05 \x01(\tR\x11originatorAddress\x12'\n" +
	"\x0foriginator_port\x18\x06 \x01(\rR\x0eoriginatorPort\"\xcc\x02\n" +
	"\x15ForwardedTCPIPRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12%\n" +
	"\x0esender_channel\x18\x02 \x01(\rR\rsenderChannel\x12.\n" +
	"\x13initial_window_size\x18\x03 \x01(\rR\x11initialWindowSize\x12.\n" +
	"\x13maximum_packet_size\x18\x04 \x01(\rR\x11maximumPacketSize\x12\x18\n" +
	"\aaddress\x18\x05 \x01(\tR\aaddress\x12\x12\n" +
	"\x04port\x18\x06 \x01(\rR\x04port\x122\n" +
	"\x15originator_ip_address\x18\a \x01(\tR\x13originatorIpAddress\x12'\n" +
	"\x0foriginator_port\x18\b \x01(\rR\x0eoriginatorPort\"\xc3\x02\n" +
	"\x12DirectTCPIPRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12%\n" +
	"\x0esender_channel\x18\x02 \x01(\rR\rsenderChannel\x12.\n" +
	"\x13initial_window_size\x18\x03 \x01(\rR\x11initialWindowSize\x12.\n" +
	"\x13maximum_packet_size\x18\x04 \x01(\rR\x11maximumPacketSize\x12\x12\n" +
	"\x04host\x18\x05 \x01(\tR\x04host\x12\x12\n" +
	"\x04port\x18\x06 \x01(\rR\x04port\x122\n" +
	"\x15originator_ip_address\x18\a \x01(\tR\x13originatorIpAddress\x12'\n" +
	"\x0foriginator_port\x18\b \x01(\rR\x0eoriginatorPort\"\xfc\x02\n" +
	"\n" +
	"PtyRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x12 \n" +
	"\fterm_env_var\x18\x03 \x01(\tR\n" +
	"termEnvVar\x12:\n" +
	"\x19terminal_width_characters\x18\x04 \x01(\rR\x17terminalWidthCharacters\x120\n" +
	"\x14terminal_height_rows\x18\x05 \x01(\rR\x12terminalHeightRows\x122\n" +
	"\x15terminal_width_pixels\x18\x06 \x01(\rR\x13terminalWidthPixels\x124\n" +
	"\x16terminal_height_pixels\x18\a \x01(\rR\x14terminalHeightPixels\x122\n" +
	"\x15encoded_terminal_mode\x18\b \x01(\fR\x13encodedTerminalMode\"\xad\x02\n" +
	"\x14X11ForwardingRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x12+\n" +
	"\x11single_connection\x18\x03 \x01(\bR\x10singleConnection\x12>\n" +
	"\x1bx11_authentication_protocol\x18\x04 \x01(\tR\x19x11AuthenticationProtocol\x12:\n" +
	"\x19x11_authentication_cookie\x18\x05 \x01(\tR\x17x11AuthenticationCookie\x12*\n" +
	"\x11x11_screen_number\x18\x06 \x01(\rR\x0fx11ScreenNumber\"\x9a\x01\n" +
	"\n" +
	"EnvRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x12#\n" +
	"\rvariable_name\x18\x03 \x01(\tR\fvariableName\x12%\n" +
	"\x0evariable_value\x18\x04 \x01(\tR\rvariableValue\"P\n" +
	"\fShellRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\"i\n" +
	"\vExecRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x12\x18\n" +
	"\acommand\x18\x03 \x01(\tR\acommand\"{\n" +
	"\x10SubsystemRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x12%\n" +
	"\x0esubsystem_name\x18\x03 \x01(\tR\rsubsystemName\"\xa9\x02\n" +
	"\x13WindowChangeRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x124\n" +
	"\x16terminal_width_columns\x18\x03 \x01(\rR\x14terminalWidthColumns\x120\n" +
	"\x14terminal_height_rows\x18\x04 \x01(\rR\x12terminalHeightRows\x122\n" +
	"\x15terminal_width_pixels\x18\x05 \x01(\rR\x13terminalWidthPixels\x124\n" +
	"\x16terminal_height_pixels\x18\x06 \x01(\rR\x14terminalHeightPixels\"v\n" +
	"\x0eXonXoffRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x12\"\n" +
	"\rclient_can_do\x18\x03 \x01(\bR\vclientCanDo\"r\n" +
	"\rSignalRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x12\x1f\n" +
	"\vsignal_name\x18\x03 \x01(\tR\n" +
	"signalName\"v\n" +
	"\x11ExitStatusRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x12\x1f\n" +
	"\vexit_status\x18\x03 \x01(\rR\n" +
	"exitStatus\"\xdf\x01\n" +
	"\x11ExitSignalRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x12\x1f\n" +
	"\vsignal_name\x18\x03 \x01(\tR\n" +
	"signalName\x12\x1f\n" +
	"\vcore_dumped\x18\x04 \x01(\bR\n" +
	"coreDumped\x12#\n" +
	"\rerror_message\x18\x05 \x01(\tR\ferrorMessage\x12!\n" +
	"\flanguage_tag\x18\x06 \x01(\tR\vlanguageTag\"x\n" +
	"\fBreakRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x12&\n" +
	"\x0fbreak_length_ms\x18\x03 \x01(\rR\rbreakLengthMs\"\xa1\x01\n" +
	"\x13TCPIPForwardRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x12&\n" +
	"\x0faddress_to_bind\x18\x03 \x01(\tR\raddressToBind\x12 \n" +
	"\fport_to_bind\x18\x04 \x01(\rR\n" +
	"portToBind\"\xa7\x01\n" +
	"\x19CancelTCPIPForwardRequest\x12!\n" +
	"\frequest_type\x18\x01 \x01(\tR\vrequestType\x12\x1d\n" +
	"\n" +
	"want_reply\x18\x02 \x01(\bR\twantReply\x12&\n" +
	"\x0faddress_to_bind\x18\x03 \x01(\tR\raddressToBind\x12 \n" +
	"\fport_to_bind\x18\x04 \x01(\rR\n" +
	"portToBindB\x92\x01\n" +
	"\n" +
	"com.ssh.v1B\x0eSshChunksProtoP\x01Z;github.com/hashicorp/boundary/internal/bsr/gen/ssh/v1;sshv1\xa2\x02\x03SXX\xaa\x02\x06Ssh.V1\xca\x02\x06Ssh\\V1\xe2\x02\x12Ssh\\V1\\GPBMetadata\xea\x02\aSsh::V1b\x06proto3"

var (
	file_ssh_v1_ssh_chunks_proto_rawDescOnce sync.Once
	file_ssh_v1_ssh_chunks_proto_rawDescData []byte
)

func file_ssh_v1_ssh_chunks_proto_rawDescGZIP() []byte {
	file_ssh_v1_ssh_chunks_proto_rawDescOnce.Do(func() {
		file_ssh_v1_ssh_chunks_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_ssh_v1_ssh_chunks_proto_rawDesc), len(file_ssh_v1_ssh_chunks_proto_rawDesc)))
	})
	return file_ssh_v1_ssh_chunks_proto_rawDescData
}

var file_ssh_v1_ssh_chunks_proto_msgTypes = make([]protoimpl.MessageInfo, 19)
var file_ssh_v1_ssh_chunks_proto_goTypes = []any{
	(*UnknownRequest)(nil),            // 0: ssh.v1.UnknownRequest
	(*SessionRequest)(nil),            // 1: ssh.v1.SessionRequest
	(*X11Request)(nil),                // 2: ssh.v1.X11Request
	(*ForwardedTCPIPRequest)(nil),     // 3: ssh.v1.ForwardedTCPIPRequest
	(*DirectTCPIPRequest)(nil),        // 4: ssh.v1.DirectTCPIPRequest
	(*PtyRequest)(nil),                // 5: ssh.v1.PtyRequest
	(*X11ForwardingRequest)(nil),      // 6: ssh.v1.X11ForwardingRequest
	(*EnvRequest)(nil),                // 7: ssh.v1.EnvRequest
	(*ShellRequest)(nil),              // 8: ssh.v1.ShellRequest
	(*ExecRequest)(nil),               // 9: ssh.v1.ExecRequest
	(*SubsystemRequest)(nil),          // 10: ssh.v1.SubsystemRequest
	(*WindowChangeRequest)(nil),       // 11: ssh.v1.WindowChangeRequest
	(*XonXoffRequest)(nil),            // 12: ssh.v1.XonXoffRequest
	(*SignalRequest)(nil),             // 13: ssh.v1.SignalRequest
	(*ExitStatusRequest)(nil),         // 14: ssh.v1.ExitStatusRequest
	(*ExitSignalRequest)(nil),         // 15: ssh.v1.ExitSignalRequest
	(*BreakRequest)(nil),              // 16: ssh.v1.BreakRequest
	(*TCPIPForwardRequest)(nil),       // 17: ssh.v1.TCPIPForwardRequest
	(*CancelTCPIPForwardRequest)(nil), // 18: ssh.v1.CancelTCPIPForwardRequest
}
var file_ssh_v1_ssh_chunks_proto_depIdxs = []int32{
	0, // [0:0] is the sub-list for method output_type
	0, // [0:0] is the sub-list for method input_type
	0, // [0:0] is the sub-list for extension type_name
	0, // [0:0] is the sub-list for extension extendee
	0, // [0:0] is the sub-list for field type_name
}

func init() { file_ssh_v1_ssh_chunks_proto_init() }
func file_ssh_v1_ssh_chunks_proto_init() {
	if File_ssh_v1_ssh_chunks_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_ssh_v1_ssh_chunks_proto_rawDesc), len(file_ssh_v1_ssh_chunks_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   19,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_ssh_v1_ssh_chunks_proto_goTypes,
		DependencyIndexes: file_ssh_v1_ssh_chunks_proto_depIdxs,
		MessageInfos:      file_ssh_v1_ssh_chunks_proto_msgTypes,
	}.Build()
	File_ssh_v1_ssh_chunks_proto = out.File
	file_ssh_v1_ssh_chunks_proto_goTypes = nil
	file_ssh_v1_ssh_chunks_proto_depIdxs = nil
}
