/usr/share/ada/adainclude/aws/aws-parameters.ads is in libaws3.3.2.2-dev 17.2.2017-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | ------------------------------------------------------------------------------
-- Ada Web Server --
-- --
-- Copyright (C) 2000-2016, AdaCore --
-- --
-- This library is free software; you can redistribute it and/or modify --
-- it under terms of the GNU General Public License as published by the --
-- Free Software Foundation; either version 3, or (at your option) any --
-- later version. This library is distributed in the hope that it will be --
-- useful, but WITHOUT ANY WARRANTY; without even the implied warranty of --
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. --
-- --
-- --
-- --
-- --
-- --
-- You should have received a copy of the GNU General Public License and --
-- a copy of the GCC Runtime Library Exception along with this program; --
-- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
-- <http://www.gnu.org/licenses/>. --
-- --
-- --
-- --
-- --
-- --
-- --
-- --
------------------------------------------------------------------------------
pragma Ada_2012;
with AWS.Containers.Tables;
with AWS.Resources.Streams.Memory;
package AWS.Parameters is
type List is new AWS.Containers.Tables.Table_Type with private;
subtype VString_Array is AWS.Containers.Tables.VString_Array;
function URI_Format
(Parameter_List : List; Limit : Positive := Positive'Last) return String;
-- Returns the list of parameters in the URI format. This can be added
-- after the resource to form the complete URI. The format is:
-- "?name1=value1&name2=value2..."
-- If there is no parameter in the list, the empty string is returned.
-- Limit is maximum size of the output line, parameters name=value will be
-- returned unbroken in case of limit applied.
procedure Add
(Parameter_List : in out List; Name, Value : String; Decode : Boolean);
-- URL decode and add Name=Value pair into parameters
procedure Add (Parameter_List : in out List; Parameters : String);
-- Set parameters for the current request. The Parameters string has the
-- form "name1=value1&name2=value2...". The paramaters are added to the
-- list. The parameters can start with a '?' (standard Web character
-- separator) which is just ignored.
procedure Add
(Parameter_List : in out List;
Parameters : in out Resources.Streams.Memory.Stream_Type'Class);
-- Same as above, but use different parameters source. Used to reduce
-- stack usage on big POST requests. This is the routine used by AWS for
-- parsing the POST parameters. This routine also control the maximum
-- number of parameter parsed as set by the corresponding configuration
-- option.
procedure Update
(Parameter_List : in out List; Name, Value : String; Decode : Boolean);
Too_Long_Parameter : exception;
-- Raised if the Add routine detects a too long parameter line when reading
-- parameters from Memory_Stream.
Too_Many_Parameters : exception;
-- Raised when the maximum number of parameters has been reached
-- See AWS.Containers.Tables for inherited routines
private
type List is new AWS.Containers.Tables.Table_Type with null record;
end AWS.Parameters;
|