Github user jmuehlner commented on a diff in the pull request:

    https://github.com/apache/guacamole-server/pull/186#discussion_r220423463
  
    --- Diff: src/protocols/kubernetes/settings.h ---
    @@ -0,0 +1,279 @@
    +/*
    + * Licensed to the Apache Software Foundation (ASF) under one
    + * or more contributor license agreements.  See the NOTICE file
    + * distributed with this work for additional information
    + * regarding copyright ownership.  The ASF licenses this file
    + * to you under the Apache License, Version 2.0 (the
    + * "License"); you may not use this file except in compliance
    + * with the License.  You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * Unless required by applicable law or agreed to in writing,
    + * software distributed under the License is distributed on an
    + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    + * KIND, either express or implied.  See the License for the
    + * specific language governing permissions and limitations
    + * under the License.
    + */
    +
    +#ifndef GUAC_KUBERNETES_SETTINGS_H
    +#define GUAC_KUBERNETES_SETTINGS_H
    +
    +#include <guacamole/user.h>
    +
    +#include <stdbool.h>
    +
    +/**
    + * The name of the font to use for the terminal if no name is specified.
    + */
    +#define GUAC_KUBERNETES_DEFAULT_FONT_NAME "monospace" 
    +
    +/**
    + * The size of the font to use for the terminal if no font size is 
specified,
    + * in points.
    + */
    +#define GUAC_KUBERNETES_DEFAULT_FONT_SIZE 12
    +
    +/**
    + * The port to connect to when initiating any Kubernetes connection, if no
    + * other port is specified.
    + */
    +#define GUAC_KUBERNETES_DEFAULT_PORT 8080
    +
    +/**
    + * The name of the Kubernetes namespace that should be used by default if 
no
    + * specific Kubernetes namespace is provided.
    + */
    +#define GUAC_KUBERNETES_DEFAULT_NAMESPACE "default"
    +
    +/**
    + * The filename to use for the typescript, if not specified.
    + */
    +#define GUAC_KUBERNETES_DEFAULT_TYPESCRIPT_NAME "typescript" 
    +
    +/**
    + * The filename to use for the screen recording, if not specified.
    + */
    +#define GUAC_KUBERNETES_DEFAULT_RECORDING_NAME "recording"
    +
    +/**
    + * The default maximum scrollback size in rows.
    + */
    +#define GUAC_KUBERNETES_DEFAULT_MAX_SCROLLBACK 1000
    +
    +/**
    + * Settings for the Kubernetes connection. The values for this structure 
are
    + * parsed from the arguments given during the Guacamole protocol handshake
    + * using the guac_kubernetes_parse_args() function.
    + */
    +typedef struct guac_kubernetes_settings {
    +
    +    /**
    +     * The hostname of the Kubernetes server to connect to.
    +     */
    +    char* hostname;
    +
    +    /**
    +     * The port of the Kubernetes server to connect to.
    +     */
    +    int port;
    +
    +    /**
    +     * The name of the Kubernetes namespace of the pod containing the 
container
    +     * being attached to.
    +     */
    +    char* kubernetes_namespace;
    +
    +    /**
    +     * The name of the Kubernetes pod containing with the container being
    +     * attached to.
    +     */
    +    char* kubernetes_pod;
    +
    +    /**
    +     * The name of the container to attach to, or NULL to arbitrarily 
attach to
    +     * the first container in the pod.
    +     */
    +    char* kubernetes_container;
    +
    +    /**
    +     * Whether SSL/TLS should be used.
    +     */
    +    bool use_ssl;
    +
    +    /**
    +     * The certificate to use if performing SSL/TLS client authentication 
to
    +     * authenticate with the Kubernetes server, in PEM format. If omitted, 
SSL
    +     * client authentication will not be performed.
    +     */
    +    char* client_cert;
    +
    +    /**
    +     * The key to use if performing SSL/TLS client authentication to
    +     * authenticate with the Kubernetes server, in PEM format. If omitted, 
SSL
    +     * client authentication will not be performed.
    +     */
    +    char* client_key;
    +
    +    /**
    +     * The certificate of the certificate authority that signed the 
certificate
    +     * of the Kubernetes server, in PEM format. If omitted. verification of
    +     * the Kubernetes server certificate will use the systemwide 
certificate
    +     * authorities.
    +     */
    +    char* ca_cert;
    +
    +    /**
    +     * Whether the certificate used by the Kubernetes server for SSL/TLS 
should
    +     * be ignored if it cannot be validated.
    +     */
    +    bool ignore_cert;
    +
    +    /**
    +     * Whether this connection is read-only, and user input should be 
dropped.
    +     */
    +    bool read_only;
    +
    +    /**
    +     * The maximum size of the scrollback buffer in rows.
    +     */
    +    int max_scrollback;
    +
    +    /**
    +     * The name of the font to use for display rendering.
    +     */
    +    char* font_name;
    +
    +    /**
    +     * The size of the font to use, in points.
    +     */
    +    int font_size;
    +
    +    /**
    +     * The name of the color scheme to use.
    +     */
    +    char* color_scheme; 
    +
    +    /**
    +     * The desired width of the terminal display, in pixels.
    +     */
    +    int width;
    +
    +    /**
    +     * The desired height of the terminal display, in pixels.
    +     */
    +    int height;
    +
    +    /**
    +     * The desired screen resolution, in DPI.
    +     */
    +    int resolution;
    +
    +    /**
    +     * The path in which the typescript should be saved, if enabled. If no
    +     * typescript should be saved, this will be NULL.
    +     */
    +    char* typescript_path;
    +
    +    /**
    +     * The filename to use for the typescript, if enabled.
    +     */
    +    char* typescript_name;
    +
    +    /**
    +     * Whether the typescript path should be automatically created if it 
does
    +     * not already exist.
    +     */
    +    bool create_typescript_path;
    +
    +    /**
    +     * The path in which the screen recording should be saved, if enabled. 
If
    +     * no screen recording should be saved, this will be NULL.
    +     */
    +    char* recording_path;
    +
    +    /**
    +     * The filename to use for the screen recording, if enabled.
    +     */
    +    char* recording_name;
    +
    +    /**
    +     * Whether the screen recording path should be automatically created 
if it
    +     * does not already exist.
    +     */
    +    bool create_recording_path;
    +
    +    /**
    +     * Whether output which is broadcast to each connected client 
(graphics,
    +     * streams, etc.) should NOT be included in the session recording. 
Output
    +     * is included by default, as it is necessary for any recording which 
must
    +     * later be viewable as video.
    +     */
    +    bool recording_exclude_output;
    +
    +    /**
    +     * Whether changes to mouse state, such as position and buttons 
pressed or
    +     * released, should NOT be included in the session recording. Mouse 
state
    +     * is included by default, as it is necessary for the mouse cursor to 
be
    +     * rendered in any resulting video.
    +     */
    +    bool recording_exclude_mouse;
    +
    +    /**
    +     * Whether keys pressed and released should be included in the session
    +     * recording. Key events are NOT included by default within the 
recording,
    +     * as doing so has privacy and security implications.  Including key 
events
    +     * may be necessary in certain auditing contexts, but should only be 
done
    +     * with caution. Key events can easily contain sensitive information, 
such
    +     * as passwords, credit card numbers, etc.
    +     */
    +    bool recording_include_keys;
    +
    +    /**
    +     * The ASCII code, as an integer, that the telnet client will use when 
the
    --- End diff --
    
    Did you mean "telnet" here?


---

Reply via email to