LCOV - code coverage report
Current view: top level - libavformat - rtspcodes.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 0 2 0.0 %
Date: 2017-12-17 11:58:42 Functions: 0 1 0.0 %

          Line data    Source code
       1             : /*
       2             :  * RTSP definitions
       3             :  * copyright (c) 2002 Fabrice Bellard
       4             :  * copyright (c) 2014 Samsung Electronics. All rights reserved.
       5             :  *     @Author: Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com>
       6             :  *
       7             :  * This file is part of FFmpeg.
       8             :  *
       9             :  * FFmpeg is free software; you can redistribute it and/or
      10             :  * modify it under the terms of the GNU Lesser General Public
      11             :  * License as published by the Free Software Foundation; either
      12             :  * version 2.1 of the License, or (at your option) any later version.
      13             :  *
      14             :  * FFmpeg is distributed in the hope that it will be useful,
      15             :  * but WITHOUT ANY WARRANTY; without even the implied warranty of
      16             :  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      17             :  * Lesser General Public License for more details.
      18             :  *
      19             :  * You should have received a copy of the GNU Lesser General Public
      20             :  * License along with FFmpeg; if not, write to the Free Software
      21             :  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
      22             :  */
      23             : 
      24             : #ifndef AVFORMAT_RTSPCODES_H
      25             : #define AVFORMAT_RTSPCODES_H
      26             : 
      27             : #include "libavutil/common.h"
      28             : #include "libavformat/http.h"
      29             : 
      30             : /** RTSP handling */
      31             : enum RTSPStatusCode {
      32             : RTSP_STATUS_CONTINUE             =100,
      33             : RTSP_STATUS_OK                   =200,
      34             : RTSP_STATUS_CREATED              =201,
      35             : RTSP_STATUS_LOW_ON_STORAGE_SPACE =250,
      36             : RTSP_STATUS_MULTIPLE_CHOICES     =300,
      37             : RTSP_STATUS_MOVED_PERMANENTLY    =301,
      38             : RTSP_STATUS_MOVED_TEMPORARILY    =302,
      39             : RTSP_STATUS_SEE_OTHER            =303,
      40             : RTSP_STATUS_NOT_MODIFIED         =304,
      41             : RTSP_STATUS_USE_PROXY            =305,
      42             : RTSP_STATUS_BAD_REQUEST          =400,
      43             : RTSP_STATUS_UNAUTHORIZED         =401,
      44             : RTSP_STATUS_PAYMENT_REQUIRED     =402,
      45             : RTSP_STATUS_FORBIDDEN            =403,
      46             : RTSP_STATUS_NOT_FOUND            =404,
      47             : RTSP_STATUS_METHOD               =405,
      48             : RTSP_STATUS_NOT_ACCEPTABLE       =406,
      49             : RTSP_STATUS_PROXY_AUTH_REQUIRED  =407,
      50             : RTSP_STATUS_REQ_TIME_OUT         =408,
      51             : RTSP_STATUS_GONE                 =410,
      52             : RTSP_STATUS_LENGTH_REQUIRED      =411,
      53             : RTSP_STATUS_PRECONDITION_FAILED  =412,
      54             : RTSP_STATUS_REQ_ENTITY_2LARGE    =413,
      55             : RTSP_STATUS_REQ_URI_2LARGE       =414,
      56             : RTSP_STATUS_UNSUPPORTED_MTYPE    =415,
      57             : RTSP_STATUS_PARAM_NOT_UNDERSTOOD =451,
      58             : RTSP_STATUS_CONFERENCE_NOT_FOUND =452,
      59             : RTSP_STATUS_BANDWIDTH            =453,
      60             : RTSP_STATUS_SESSION              =454,
      61             : RTSP_STATUS_STATE                =455,
      62             : RTSP_STATUS_INVALID_HEADER_FIELD =456,
      63             : RTSP_STATUS_INVALID_RANGE        =457,
      64             : RTSP_STATUS_RONLY_PARAMETER      =458,
      65             : RTSP_STATUS_AGGREGATE            =459,
      66             : RTSP_STATUS_ONLY_AGGREGATE       =460,
      67             : RTSP_STATUS_TRANSPORT            =461,
      68             : RTSP_STATUS_UNREACHABLE          =462,
      69             : RTSP_STATUS_INTERNAL             =500,
      70             : RTSP_STATUS_NOT_IMPLEMENTED      =501,
      71             : RTSP_STATUS_BAD_GATEWAY          =502,
      72             : RTSP_STATUS_SERVICE              =503,
      73             : RTSP_STATUS_GATEWAY_TIME_OUT     =504,
      74             : RTSP_STATUS_VERSION              =505,
      75             : RTSP_STATUS_UNSUPPORTED_OPTION   =551,
      76             : };
      77             : 
      78             : static const av_unused char * const rtsp_status_strings[] = {
      79             : [RTSP_STATUS_CONTINUE]               ="Continue",
      80             : [RTSP_STATUS_OK]                     ="OK",
      81             : [RTSP_STATUS_CREATED]                ="Created",
      82             : [RTSP_STATUS_LOW_ON_STORAGE_SPACE]   ="Low on Storage Space",
      83             : [RTSP_STATUS_MULTIPLE_CHOICES]       ="Multiple Choices",
      84             : [RTSP_STATUS_MOVED_PERMANENTLY]      ="Moved Permanently",
      85             : [RTSP_STATUS_MOVED_TEMPORARILY]      ="Moved Temporarily",
      86             : [RTSP_STATUS_SEE_OTHER]              ="See Other",
      87             : [RTSP_STATUS_NOT_MODIFIED]           ="Not Modified",
      88             : [RTSP_STATUS_USE_PROXY]              ="Use Proxy",
      89             : [RTSP_STATUS_BAD_REQUEST]            ="Bad Request",
      90             : [RTSP_STATUS_UNAUTHORIZED]           ="Unauthorized",
      91             : [RTSP_STATUS_PAYMENT_REQUIRED]       ="Payment Required",
      92             : [RTSP_STATUS_FORBIDDEN]              ="Forbidden",
      93             : [RTSP_STATUS_NOT_FOUND]              ="Not Found",
      94             : [RTSP_STATUS_METHOD]                 ="Method Not Allowed",
      95             : [RTSP_STATUS_NOT_ACCEPTABLE]         ="Not Acceptable",
      96             : [RTSP_STATUS_PROXY_AUTH_REQUIRED]    ="Proxy Authentication Required",
      97             : [RTSP_STATUS_REQ_TIME_OUT]           ="Request Time-out",
      98             : [RTSP_STATUS_GONE]                   ="Gone",
      99             : [RTSP_STATUS_LENGTH_REQUIRED]        ="Length Required",
     100             : [RTSP_STATUS_PRECONDITION_FAILED]    ="Precondition Failed",
     101             : [RTSP_STATUS_REQ_ENTITY_2LARGE]      ="Request Entity Too Large",
     102             : [RTSP_STATUS_REQ_URI_2LARGE]         ="Request URI Too Large",
     103             : [RTSP_STATUS_UNSUPPORTED_MTYPE]      ="Unsupported Media Type",
     104             : [RTSP_STATUS_PARAM_NOT_UNDERSTOOD]   ="Parameter Not Understood",
     105             : [RTSP_STATUS_CONFERENCE_NOT_FOUND]   ="Conference Not Found",
     106             : [RTSP_STATUS_BANDWIDTH]              ="Not Enough Bandwidth",
     107             : [RTSP_STATUS_SESSION]                ="Session Not Found",
     108             : [RTSP_STATUS_STATE]                  ="Method Not Valid in This State",
     109             : [RTSP_STATUS_INVALID_HEADER_FIELD]   ="Header Field Not Valid for Resource",
     110             : [RTSP_STATUS_INVALID_RANGE]          ="Invalid Range",
     111             : [RTSP_STATUS_RONLY_PARAMETER]        ="Parameter Is Read-Only",
     112             : [RTSP_STATUS_AGGREGATE]              ="Aggregate Operation no Allowed",
     113             : [RTSP_STATUS_ONLY_AGGREGATE]         ="Only Aggregate Operation Allowed",
     114             : [RTSP_STATUS_TRANSPORT]              ="Unsupported Transport",
     115             : [RTSP_STATUS_UNREACHABLE]            ="Destination Unreachable",
     116             : [RTSP_STATUS_INTERNAL]               ="Internal Server Error",
     117             : [RTSP_STATUS_NOT_IMPLEMENTED]        ="Not Implemented",
     118             : [RTSP_STATUS_BAD_GATEWAY]            ="Bad Gateway",
     119             : [RTSP_STATUS_SERVICE]                ="Service Unavailable",
     120             : [RTSP_STATUS_GATEWAY_TIME_OUT]       ="Gateway Time-out",
     121             : [RTSP_STATUS_VERSION]                ="RTSP Version not Supported",
     122             : [RTSP_STATUS_UNSUPPORTED_OPTION]     ="Option not supported",
     123             : };
     124             : 
     125             : #define RTSP_STATUS_CODE2STRING(x) (\
     126             : x >= 100 && x < FF_ARRAY_ELEMS(rtsp_status_strings) && rtsp_status_strings[x] \
     127             : )? rtsp_status_strings[x] : NULL
     128             : 
     129             : enum RTSPMethod {
     130             :     DESCRIBE,
     131             :     ANNOUNCE,
     132             :     OPTIONS,
     133             :     SETUP,
     134             :     PLAY,
     135             :     PAUSE,
     136             :     TEARDOWN,
     137             :     GET_PARAMETER,
     138             :     SET_PARAMETER,
     139             :     REDIRECT,
     140             :     RECORD,
     141             :     UNKNOWN = -1,
     142             : };
     143             : 
     144           0 : static inline int ff_rtsp_averror(enum RTSPStatusCode status_code, int default_averror)
     145             : {
     146           0 :     return ff_http_averror(status_code, default_averror);
     147             : }
     148             : 
     149             : #endif /* AVFORMAT_RTSPCODES_H */

Generated by: LCOV version 1.13