cscg24-guacamole

CSCG 2024 Challenge 'Guacamole Mashup'
git clone https://git.sinitax.com/sinitax/cscg24-guacamole
Log | Files | Refs | sfeed.txt

sshagent.h (2269B)


      1/**
      2 * FreeRDP: A Remote Desktop Protocol Implementation
      3 * SSH Agent Virtual Channel Extension
      4 *
      5 * Copyright 2017 Ben Cohen
      6 *
      7 * Licensed under the Apache License, Version 2.0 (the "License");
      8 * you may not use this file except in compliance with the License.
      9 * You may obtain a copy of the License at
     10 *
     11 *     http://www.apache.org/licenses/LICENSE-2.0
     12 *
     13 * Unless required by applicable law or agreed to in writing, software
     14 * distributed under the License is distributed on an "AS IS" BASIS,
     15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     16 * See the License for the specific language governing permissions and
     17 * limitations under the License.
     18 */
     19
     20#ifndef FREERDP_CHANNEL_CLIENT_SSHAGENT_H
     21#define FREERDP_CHANNEL_CLIENT_SSHAGENT_H
     22
     23#include <freerdp/types.h>
     24
     25#include <freerdp/message.h>
     26#include <freerdp/channels/cliprdr.h>
     27#include <freerdp/freerdp.h>
     28
     29typedef struct _sshagent_client_context
     30{
     31	int ProtocolVersion;
     32	int MaxConnections;
     33} SSHAgentClientContext;
     34
     35/*
     36 * The channel is defined by the sshagent channel in xrdp as follows.
     37 *
     38 * Server to client commands
     39 * -------------------------
     40 *
     41 * Capabilities (at start of channel stream):
     42 *
     43 *    INT32  SA_TAG_CAPABILITY
     44 *    INT32  SSHAGENT_CHAN_PROT_VERSION := 1
     45 *    INT32  SSHAGENT_MAX_CONNECTIONS
     46 *
     47 * Open connection:
     48 *
     49 *    INT32  SA_TAG_OPEN
     50 *    INT32  Connection id (0, ..., SSHAGENT_MAX_CONNECTIONS - 1)
     51 *
     52 * Send data:
     53 *
     54 *    INT32  SA_TAG_WRITE
     55 *    INT32  Connection id (0, ..., SSHAGENT_MAX_CONNECTIONS - 1)
     56 *    INT32  Data length
     57 *    DATA   ...
     58 *
     59 * Close connection:
     60 *
     61 *    INT32  SA_TAG_CLOSE
     62 *    INT32  Connection id (0, ..., SSHAGENT_MAX_CONNECTIONS - 1)
     63 *
     64 * Client to server commands
     65 * -------------------------
     66 *
     67 * Capabilities (in reply to server capabilities):
     68 *
     69 *    INT32  SA_TAG_CAPABILITY
     70 *    INT32  SSHAGENT_CHAN_PROT_VERSION := 1
     71 *    INT32  SSHAGENT_MAX_CONNECTIONS
     72 *
     73 * Send data:
     74 *
     75 *    INT32  SA_TAG_WRITE
     76 *    INT32  Connection id (0, ..., SSHAGENT_MAX_CONNECTIONS - 1)
     77 *    INT32  Data length
     78 *    DATA   ...
     79 *
     80 * Close connection (abnormal):
     81 *
     82 *    INT32  SA_TAG_CLOSE
     83 *    INT32  Connection id (0, ..., SSHAGENT_MAX_CONNECTIONS - 1)
     84 */
     85
     86#endif /* FREERDP_CHANNEL_CLIENT_SSHAGENT_H */