argv-constants.h (2369B)
1/* 2 * Licensed to the Apache Software Foundation (ASF) under one 3 * or more contributor license agreements. See the NOTICE file 4 * distributed with this work for additional information 5 * regarding copyright ownership. The ASF licenses this file 6 * to you under the Apache License, Version 2.0 (the 7 * "License"); you may not use this file except in compliance 8 * with the License. You may obtain a copy of the License at 9 * 10 * http://www.apache.org/licenses/LICENSE-2.0 11 * 12 * Unless required by applicable law or agreed to in writing, 13 * software distributed under the License is distributed on an 14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 * KIND, either express or implied. See the License for the 16 * specific language governing permissions and limitations 17 * under the License. 18 */ 19 20#ifndef GUAC_ARGV_CONSTANTS_H 21#define GUAC_ARGV_CONSTANTS_H 22 23/** 24 * Constants related to automatic handling of received "argv" instructions. 25 * 26 * @file argv-constants.h 27 */ 28 29/** 30 * Option flag which declares to guac_argv_register() that the associated 31 * argument should be processed exactly once. If multiple "argv" streams are 32 * received for the argument, only the first such stream is processed. 33 * Additional streams will be rejected. 34 */ 35#define GUAC_ARGV_OPTION_ONCE 1 36 37/** 38 * Option flag which declares to guac_argv_register() that the values received 39 * and accepted for the associated argument should be echoed to all connected 40 * users via outbound "argv" streams. 41 */ 42#define GUAC_ARGV_OPTION_ECHO 2 43 44/** 45 * The maximum number of bytes to allow for any argument value received via an 46 * argv stream and processed using guac_argv_received(), including null 47 * terminator. 48 */ 49#define GUAC_ARGV_MAX_LENGTH 16384 50 51/** 52 * The maximum number of bytes to allow within the name of any argument 53 * registered with guac_argv_register(), including null terminator. 54 */ 55#define GUAC_ARGV_MAX_NAME_LENGTH 256 56 57/** 58 * The maximum number of bytes to allow within the mimetype of any received 59 * argument value passed to a callback registered with guac_argv_register(), 60 * including null terminator. 61 */ 62#define GUAC_ARGV_MAX_MIMETYPE_LENGTH 4096 63 64/** 65 * The maximum number of arguments that may be registered via guac_argv_await() 66 * or guac_argv_await_async() before further argument registrations will fail. 67 */ 68#define GUAC_ARGV_MAX_REGISTERED 128 69 70#endif 71