Changeset 534


Ignore:
Timestamp:
Jun 22, 2006 6:30:13 PM (16 years ago)
Author:
bennylp
Message:

Added the error code into error messages

Location:
pjproject/trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjlib-util/src/pjlib-util/errno.c

    r330 r534  
    3434{ 
    3535    /* STUN errors */ 
    36     { PJLIB_UTIL_ESTUNRESOLVE,      "Unable to resolve STUN server" }, 
    37     { PJLIB_UTIL_ESTUNINMSGTYPE,    "Unknown STUN message type" }, 
    38     { PJLIB_UTIL_ESTUNINMSGLEN,     "Invalid STUN message length" }, 
    39     { PJLIB_UTIL_ESTUNINATTRLEN,    "STUN attribute length error" }, 
    40     { PJLIB_UTIL_ESTUNINATTRTYPE,   "Invalid STUN attribute type" }, 
    41     { PJLIB_UTIL_ESTUNININDEX,      "Invalid STUN server/socket index" }, 
    42     { PJLIB_UTIL_ESTUNNOBINDRES,    "No STUN binding response in the message" }, 
    43     { PJLIB_UTIL_ESTUNRECVERRATTR,  "Received STUN error attribute" }, 
    44     { PJLIB_UTIL_ESTUNNOMAP,        "No STUN mapped address attribute" }, 
    45     { PJLIB_UTIL_ESTUNNOTRESPOND,   "Received no response from STUN server" }, 
    46     { PJLIB_UTIL_ESTUNSYMMETRIC,    "Symetric NAT detected by STUN" }, 
     36    PJ_BUILD_ERR( PJLIB_UTIL_ESTUNRESOLVE,      "Unable to resolve STUN server" ), 
     37    PJ_BUILD_ERR( PJLIB_UTIL_ESTUNINMSGTYPE,    "Unknown STUN message type" ), 
     38    PJ_BUILD_ERR( PJLIB_UTIL_ESTUNINMSGLEN,     "Invalid STUN message length" ), 
     39    PJ_BUILD_ERR( PJLIB_UTIL_ESTUNINATTRLEN,    "STUN attribute length error" ), 
     40    PJ_BUILD_ERR( PJLIB_UTIL_ESTUNINATTRTYPE,   "Invalid STUN attribute type" ), 
     41    PJ_BUILD_ERR( PJLIB_UTIL_ESTUNININDEX,      "Invalid STUN server/socket index" ), 
     42    PJ_BUILD_ERR( PJLIB_UTIL_ESTUNNOBINDRES,    "No STUN binding response in the message" ), 
     43    PJ_BUILD_ERR( PJLIB_UTIL_ESTUNRECVERRATTR,  "Received STUN error attribute" ), 
     44    PJ_BUILD_ERR( PJLIB_UTIL_ESTUNNOMAP,        "No STUN mapped address attribute" ), 
     45    PJ_BUILD_ERR( PJLIB_UTIL_ESTUNNOTRESPOND,   "Received no response from STUN server" ), 
     46    PJ_BUILD_ERR( PJLIB_UTIL_ESTUNSYMMETRIC,    "Symetric NAT detected by STUN" ), 
    4747 
    4848    /* XML errors */ 
    49     { PJLIB_UTIL_EINXML,            "Invalid XML message" }, 
     49    PJ_BUILD_ERR( PJLIB_UTIL_EINXML,            "Invalid XML message" ), 
    5050}; 
    5151#endif  /* PJ_HAS_ERROR_STRING */ 
  • pjproject/trunk/pjlib/include/pj/errno.h

    r289 r534  
    6767 * Guidelines on error message length. 
    6868 */ 
    69 #define PJ_ERR_MSG_SIZE  64 
     69#define PJ_ERR_MSG_SIZE  80 
    7070 
    7171/** 
     
    190190 
    191191/** 
     192 * Use this macro to generate error message text for your error code, 
     193 * so that they look uniformly as the rest of the libraries. 
     194 * 
     195 * @param code  The error code 
     196 * @param msg   The error test. 
     197 */ 
     198#ifndef PJ_BUILD_ERR 
     199#   define PJ_BUILD_ERR(code,msg) { code, msg " (" #code ")" } 
     200#endif 
     201 
     202 
     203/** 
    192204 * @hideinitializer 
    193205 * Unknown error has been reported. 
     
    269281 */ 
    270282#define PJ_EEOF             (PJ_ERRNO_START_STATUS + 16)/* 70016 */ 
     283/** 
     284 * @hideinitializer 
     285 * Size is too big. 
     286 */ 
     287#define PJ_ETOOBIG          (PJ_ERRNO_START_STATUS + 17)/* 70017 */ 
     288 
    271289 
    272290/** @} */   /* pj_errnum */ 
  • pjproject/trunk/pjlib/src/pj/errno.c

    r330 r534  
    4141/* PJLIB's own error codes/messages */ 
    4242#if defined(PJ_HAS_ERROR_STRING) && PJ_HAS_ERROR_STRING!=0 
     43 
    4344static const struct  
    4445{ 
     
    4748} err_str[] =  
    4849{ 
    49     { PJ_EUNKNOWN,      "Unknown Error" }, 
    50     { PJ_EPENDING,      "Pending operation" }, 
    51     { PJ_ETOOMANYCONN,  "Too many connecting sockets" }, 
    52     { PJ_EINVAL,        "Invalid value or argument" }, 
    53     { PJ_ENAMETOOLONG,  "Name too long" }, 
    54     { PJ_ENOTFOUND,     "Not found" }, 
    55     { PJ_ENOMEM,        "Not enough memory" }, 
    56     { PJ_EBUG,          "BUG DETECTED!" }, 
    57     { PJ_ETIMEDOUT,     "Operation timed out" }, 
    58     { PJ_ETOOMANY,      "Too many objects of the specified type"}, 
    59     { PJ_EBUSY,         "Object is busy"}, 
    60     { PJ_ENOTSUP,       "Option/operation is not supported"}, 
    61     { PJ_EINVALIDOP,    "Invalid operation"}, 
    62     { PJ_ECANCELLED,    "Operation cancelled"}, 
    63     { PJ_EEXISTS,       "Object already exists" }, 
    64     { PJ_EEOF,          "End of file" }, 
     50    PJ_BUILD_ERR(PJ_EUNKNOWN,      "Unknown Error" ), 
     51    PJ_BUILD_ERR(PJ_EPENDING,      "Pending operation" ), 
     52    PJ_BUILD_ERR(PJ_ETOOMANYCONN,  "Too many connecting sockets" ), 
     53    PJ_BUILD_ERR(PJ_EINVAL,        "Invalid value or argument" ), 
     54    PJ_BUILD_ERR(PJ_ENAMETOOLONG,  "Name too long" ), 
     55    PJ_BUILD_ERR(PJ_ENOTFOUND,     "Not found" ), 
     56    PJ_BUILD_ERR(PJ_ENOMEM,        "Not enough memory" ), 
     57    PJ_BUILD_ERR(PJ_EBUG,          "BUG DETECTED!" ), 
     58    PJ_BUILD_ERR(PJ_ETIMEDOUT,     "Operation timed out" ), 
     59    PJ_BUILD_ERR(PJ_ETOOMANY,      "Too many objects of the specified type"), 
     60    PJ_BUILD_ERR(PJ_EBUSY,         "Object is busy"), 
     61    PJ_BUILD_ERR(PJ_ENOTSUP,       "Option/operation is not supported"), 
     62    PJ_BUILD_ERR(PJ_EINVALIDOP,    "Invalid operation"), 
     63    PJ_BUILD_ERR(PJ_ECANCELLED,    "Operation cancelled"), 
     64    PJ_BUILD_ERR(PJ_EEXISTS,       "Object already exists" ), 
     65    PJ_BUILD_ERR(PJ_EEOF,          "End of file" ), 
     66    PJ_BUILD_ERR(PJ_ETOOBIG,       "Size is too big"), 
    6567}; 
    6668#endif  /* PJ_HAS_ERROR_STRING */ 
  • pjproject/trunk/pjmedia/src/pjmedia/errno.c

    r438 r534  
    3838{ 
    3939    /* Generic PJMEDIA errors, shouldn't be used! */ 
    40     { PJMEDIA_ERROR,                "Unspecified PJMEDIA error" }, 
     40    PJ_BUILD_ERR( PJMEDIA_ERROR,            "Unspecified PJMEDIA error" ), 
    4141 
    4242    /* SDP error. */ 
    43     { PJMEDIA_SDP_EINSDP,           "Invalid SDP descriptor" }, 
    44     { PJMEDIA_SDP_EINVER,           "Invalid SDP version line" }, 
    45     { PJMEDIA_SDP_EINORIGIN,        "Invalid SDP origin line" }, 
    46     { PJMEDIA_SDP_EINTIME,          "Invalid SDP time line"}, 
    47     { PJMEDIA_SDP_EINNAME,          "SDP name/subject line is empty"}, 
    48     { PJMEDIA_SDP_EINCONN,          "Invalid SDP connection line"}, 
    49     { PJMEDIA_SDP_EMISSINGCONN,     "Missing SDP connection info line"}, 
    50     { PJMEDIA_SDP_EINATTR,          "Invalid SDP attributes"}, 
    51     { PJMEDIA_SDP_EINRTPMAP,        "Invalid SDP rtpmap attribute"}, 
    52     { PJMEDIA_SDP_ERTPMAPTOOLONG,   "SDP rtpmap attribute too long"}, 
    53     { PJMEDIA_SDP_EMISSINGRTPMAP,   "Missing SDP rtpmap for dynamic payload type"}, 
    54     { PJMEDIA_SDP_EINMEDIA,         "Invalid SDP media line" }, 
    55     { PJMEDIA_SDP_ENOFMT,           "No SDP payload format in the media line" }, 
    56     { PJMEDIA_SDP_EINPT,            "Invalid SDP payload type in media line" }, 
    57     { PJMEDIA_SDP_EINFMTP,          "Invalid SDP fmtp attribute" }, 
     43    PJ_BUILD_ERR( PJMEDIA_SDP_EINSDP,       "Invalid SDP descriptor" ), 
     44    PJ_BUILD_ERR( PJMEDIA_SDP_EINVER,       "Invalid SDP version line" ), 
     45    PJ_BUILD_ERR( PJMEDIA_SDP_EINORIGIN,    "Invalid SDP origin line" ), 
     46    PJ_BUILD_ERR( PJMEDIA_SDP_EINTIME,      "Invalid SDP time line"), 
     47    PJ_BUILD_ERR( PJMEDIA_SDP_EINNAME,      "SDP name/subject line is empty"), 
     48    PJ_BUILD_ERR( PJMEDIA_SDP_EINCONN,      "Invalid SDP connection line"), 
     49    PJ_BUILD_ERR( PJMEDIA_SDP_EMISSINGCONN, "Missing SDP connection info line"), 
     50    PJ_BUILD_ERR( PJMEDIA_SDP_EINATTR,      "Invalid SDP attributes"), 
     51    PJ_BUILD_ERR( PJMEDIA_SDP_EINRTPMAP,    "Invalid SDP rtpmap attribute"), 
     52    PJ_BUILD_ERR( PJMEDIA_SDP_ERTPMAPTOOLONG,"SDP rtpmap attribute too long"), 
     53    PJ_BUILD_ERR( PJMEDIA_SDP_EMISSINGRTPMAP,"Missing SDP rtpmap for dynamic payload type"), 
     54    PJ_BUILD_ERR( PJMEDIA_SDP_EINMEDIA,     "Invalid SDP media line" ), 
     55    PJ_BUILD_ERR( PJMEDIA_SDP_ENOFMT,       "No SDP payload format in the media line" ), 
     56    PJ_BUILD_ERR( PJMEDIA_SDP_EINPT,        "Invalid SDP payload type in media line" ), 
     57    PJ_BUILD_ERR( PJMEDIA_SDP_EINFMTP,      "Invalid SDP fmtp attribute" ), 
    5858 
    5959    /* SDP negotiator errors. */ 
    60     { PJMEDIA_SDPNEG_EINSTATE,      "Invalid SDP negotiator state for operation" }, 
    61     { PJMEDIA_SDPNEG_ENOINITIAL,    "No initial local SDP in SDP negotiator" }, 
    62     { PJMEDIA_SDPNEG_ENOACTIVE,     "No active SDP in SDP negotiator" }, 
    63     { PJMEDIA_SDPNEG_ENONEG,        "No current local/remote offer/answer" }, 
    64     { PJMEDIA_SDPNEG_EMISMEDIA,     "SDP media count mismatch in offer/answer" }, 
    65     { PJMEDIA_SDPNEG_EINVANSMEDIA,  "SDP media type mismatch in offer/answer" }, 
    66     { PJMEDIA_SDPNEG_EINVANSTP,     "SDP media transport type mismatch in offer/answer" }, 
    67     { PJMEDIA_SDPNEG_EANSNOMEDIA,   "No common SDP media payload in answer" }, 
    68     { PJMEDIA_SDPNEG_ENOMEDIA,      "No active media stream after negotiation" }, 
     60    PJ_BUILD_ERR( PJMEDIA_SDPNEG_EINSTATE,      "Invalid SDP negotiator state for operation" ), 
     61    PJ_BUILD_ERR( PJMEDIA_SDPNEG_ENOINITIAL,    "No initial local SDP in SDP negotiator" ), 
     62    PJ_BUILD_ERR( PJMEDIA_SDPNEG_ENOACTIVE,     "No active SDP in SDP negotiator" ), 
     63    PJ_BUILD_ERR( PJMEDIA_SDPNEG_ENONEG,        "No current local/remote offer/answer" ), 
     64    PJ_BUILD_ERR( PJMEDIA_SDPNEG_EMISMEDIA,     "SDP media count mismatch in offer/answer" ), 
     65    PJ_BUILD_ERR( PJMEDIA_SDPNEG_EINVANSMEDIA,  "SDP media type mismatch in offer/answer" ), 
     66    PJ_BUILD_ERR( PJMEDIA_SDPNEG_EINVANSTP,     "SDP media transport type mismatch in offer/answer" ), 
     67    PJ_BUILD_ERR( PJMEDIA_SDPNEG_EANSNOMEDIA,   "No common SDP media payload in answer" ), 
     68    PJ_BUILD_ERR( PJMEDIA_SDPNEG_ENOMEDIA,      "No active media stream after negotiation" ), 
    6969 
    7070    /* SDP comparison results */ 
    71     { PJMEDIA_SDP_EMEDIANOTEQUAL,   "SDP media descriptor not equal" }, 
    72     { PJMEDIA_SDP_EPORTNOTEQUAL,    "Port in SDP media descriptor not equal" }, 
    73     { PJMEDIA_SDP_ETPORTNOTEQUAL,   "Transport in SDP media descriptor not equal" }, 
    74     { PJMEDIA_SDP_EFORMATNOTEQUAL,  "Format in SDP media descriptor not equal" }, 
    75     { PJMEDIA_SDP_ECONNNOTEQUAL,    "SDP connection line not equal" }, 
    76     { PJMEDIA_SDP_EATTRNOTEQUAL,    "SDP attributes not equal" }, 
    77     { PJMEDIA_SDP_EDIRNOTEQUAL,     "SDP media direction not equal" }, 
    78     { PJMEDIA_SDP_EFMTPNOTEQUAL,    "SDP fmtp attribute not equal" }, 
    79     { PJMEDIA_SDP_ERTPMAPNOTEQUAL,  "SDP rtpmap attribute not equal" }, 
    80     { PJMEDIA_SDP_ESESSNOTEQUAL,    "SDP session descriptor not equal" }, 
    81     { PJMEDIA_SDP_EORIGINNOTEQUAL,  "SDP origin line not equal" }, 
    82     { PJMEDIA_SDP_ENAMENOTEQUAL,    "SDP name/subject line not equal" }, 
    83     { PJMEDIA_SDP_ETIMENOTEQUAL,    "SDP time line not equal" }, 
     71    PJ_BUILD_ERR( PJMEDIA_SDP_EMEDIANOTEQUAL,   "SDP media descriptor not equal" ), 
     72    PJ_BUILD_ERR( PJMEDIA_SDP_EPORTNOTEQUAL,    "Port in SDP media descriptor not equal" ), 
     73    PJ_BUILD_ERR( PJMEDIA_SDP_ETPORTNOTEQUAL,   "Transport in SDP media descriptor not equal" ), 
     74    PJ_BUILD_ERR( PJMEDIA_SDP_EFORMATNOTEQUAL,  "Format in SDP media descriptor not equal" ), 
     75    PJ_BUILD_ERR( PJMEDIA_SDP_ECONNNOTEQUAL,    "SDP connection line not equal" ), 
     76    PJ_BUILD_ERR( PJMEDIA_SDP_EATTRNOTEQUAL,    "SDP attributes not equal" ), 
     77    PJ_BUILD_ERR( PJMEDIA_SDP_EDIRNOTEQUAL,     "SDP media direction not equal" ), 
     78    PJ_BUILD_ERR( PJMEDIA_SDP_EFMTPNOTEQUAL,    "SDP fmtp attribute not equal" ), 
     79    PJ_BUILD_ERR( PJMEDIA_SDP_ERTPMAPNOTEQUAL,  "SDP rtpmap attribute not equal" ), 
     80    PJ_BUILD_ERR( PJMEDIA_SDP_ESESSNOTEQUAL,    "SDP session descriptor not equal" ), 
     81    PJ_BUILD_ERR( PJMEDIA_SDP_EORIGINNOTEQUAL,  "SDP origin line not equal" ), 
     82    PJ_BUILD_ERR( PJMEDIA_SDP_ENAMENOTEQUAL,    "SDP name/subject line not equal" ), 
     83    PJ_BUILD_ERR( PJMEDIA_SDP_ETIMENOTEQUAL,    "SDP time line not equal" ), 
    8484 
    8585    /* Codec errors. */ 
    86     { PJMEDIA_CODEC_EUNSUP,         "Unsupported media codec" }, 
    87     { PJMEDIA_CODEC_EFAILED,        "Codec internal creation error" }, 
    88     { PJMEDIA_CODEC_EFRMTOOSHORT,   "Codec frame is too short" }, 
    89     { PJMEDIA_CODEC_EPCMTOOSHORT,   "PCM frame is too short" }, 
    90     { PJMEDIA_CODEC_EFRMINLEN,      "Invalid codec frame length" }, 
     86    PJ_BUILD_ERR( PJMEDIA_CODEC_EUNSUP,         "Unsupported media codec" ), 
     87    PJ_BUILD_ERR( PJMEDIA_CODEC_EFAILED,        "Codec internal creation error" ), 
     88    PJ_BUILD_ERR( PJMEDIA_CODEC_EFRMTOOSHORT,   "Codec frame is too short" ), 
     89    PJ_BUILD_ERR( PJMEDIA_CODEC_EPCMTOOSHORT,   "PCM frame is too short" ), 
     90    PJ_BUILD_ERR( PJMEDIA_CODEC_EFRMINLEN,      "Invalid codec frame length" ), 
    9191 
    9292    /* Media errors. */ 
    93     { PJMEDIA_EINVALIDIP,           "Invalid remote media (IP) address" }, 
    94     { PJMEDIA_EASYMCODEC,           "Asymetric media codec is not supported" }, 
    95     { PJMEDIA_EINVALIDPT,           "Invalid media payload type" }, 
    96     { PJMEDIA_EMISSINGRTPMAP,       "Missing rtpmap in media description" }, 
    97     { PJMEDIA_EINVALIMEDIATYPE,     "Invalid media type" }, 
    98     { PJMEDIA_EREMOTENODTMF,        "Remote does not support DTMF" }, 
    99     { PJMEDIA_RTP_EINDTMF,          "Invalid DTMF digit" }, 
    100     { PJMEDIA_RTP_EREMNORFC2833,    "Remote does not support RFC 2833" }, 
     93    PJ_BUILD_ERR( PJMEDIA_EINVALIDIP,       "Invalid remote media (IP) address" ), 
     94    PJ_BUILD_ERR( PJMEDIA_EASYMCODEC,       "Asymetric media codec is not supported" ), 
     95    PJ_BUILD_ERR( PJMEDIA_EINVALIDPT,       "Invalid media payload type" ), 
     96    PJ_BUILD_ERR( PJMEDIA_EMISSINGRTPMAP,   "Missing rtpmap in media description" ), 
     97    PJ_BUILD_ERR( PJMEDIA_EINVALIMEDIATYPE, "Invalid media type" ), 
     98    PJ_BUILD_ERR( PJMEDIA_EREMOTENODTMF,    "Remote does not support DTMF" ), 
     99    PJ_BUILD_ERR( PJMEDIA_RTP_EINDTMF,      "Invalid DTMF digit" ), 
     100    PJ_BUILD_ERR( PJMEDIA_RTP_EREMNORFC2833,"Remote does not support RFC 2833" ), 
    101101 
    102102    /* RTP session errors. */ 
    103     { PJMEDIA_RTP_EINPKT,           "Invalid RTP packet" }, 
    104     { PJMEDIA_RTP_EINPACK,          "Invalid RTP packing (internal error)" }, 
    105     { PJMEDIA_RTP_EINVER,           "Invalid RTP version" }, 
    106     { PJMEDIA_RTP_EINSSRC,          "RTP packet SSRC id mismatch" }, 
    107     { PJMEDIA_RTP_EINPT,            "RTP packet payload type mismatch" }, 
    108     { PJMEDIA_RTP_EINLEN,           "Invalid RTP packet length" }, 
    109     { PJMEDIA_RTP_ESESSRESTART,     "RTP session restarted" }, 
    110     { PJMEDIA_RTP_ESESSPROBATION,   "RTP session in probation" }, 
    111     { PJMEDIA_RTP_EBADSEQ,          "Bad sequence number in RTP packet" }, 
    112     { PJMEDIA_RTP_EBADDEST,         "RTP media port destination is not configured" }, 
    113     { PJMEDIA_RTP_ENOCONFIG,        "RTP is not configured" }, 
     103    PJ_BUILD_ERR( PJMEDIA_RTP_EINPKT,       "Invalid RTP packet" ), 
     104    PJ_BUILD_ERR( PJMEDIA_RTP_EINPACK,      "Invalid RTP packing (internal error)" ), 
     105    PJ_BUILD_ERR( PJMEDIA_RTP_EINVER,       "Invalid RTP version" ), 
     106    PJ_BUILD_ERR( PJMEDIA_RTP_EINSSRC,      "RTP packet SSRC id mismatch" ), 
     107    PJ_BUILD_ERR( PJMEDIA_RTP_EINPT,        "RTP packet payload type mismatch" ), 
     108    PJ_BUILD_ERR( PJMEDIA_RTP_EINLEN,       "Invalid RTP packet length" ), 
     109    PJ_BUILD_ERR( PJMEDIA_RTP_ESESSRESTART,    "RTP session restarted" ), 
     110    PJ_BUILD_ERR( PJMEDIA_RTP_ESESSPROBATION,  "RTP session in probation" ), 
     111    PJ_BUILD_ERR( PJMEDIA_RTP_EBADSEQ,      "Bad sequence number in RTP packet" ), 
     112    PJ_BUILD_ERR( PJMEDIA_RTP_EBADDEST,     "RTP media port destination is not configured" ), 
     113    PJ_BUILD_ERR( PJMEDIA_RTP_ENOCONFIG,    "RTP is not configured" ), 
    114114     
    115115    /* Media port errors: */ 
    116     { PJMEDIA_ENOTCOMPATIBLE,       "Media ports are not compatible" }, 
    117     { PJMEDIA_ENCCLOCKRATE,         "Media ports have incompatible clock rate" }, 
    118     { PJMEDIA_ENCSAMPLESPFRAME,     "Media ports have incompatible samples per frame" }, 
    119     { PJMEDIA_ENCTYPE,              "Media ports have incompatible media type" }, 
    120     { PJMEDIA_ENCBITS,              "Media ports have incompatible bits per sample" }, 
    121     { PJMEDIA_ENCBYTES,             "Media ports have incompatible bytes per frame" }, 
    122     { PJMEDIA_ENCCHANNEL,           "Media ports have incompatible number of channels" }, 
     116    PJ_BUILD_ERR( PJMEDIA_ENOTCOMPATIBLE,   "Media ports are not compatible" ), 
     117    PJ_BUILD_ERR( PJMEDIA_ENCCLOCKRATE,     "Media ports have incompatible clock rate" ), 
     118    PJ_BUILD_ERR( PJMEDIA_ENCSAMPLESPFRAME, "Media ports have incompatible samples per frame" ), 
     119    PJ_BUILD_ERR( PJMEDIA_ENCTYPE,          "Media ports have incompatible media type" ), 
     120    PJ_BUILD_ERR( PJMEDIA_ENCBITS,          "Media ports have incompatible bits per sample" ), 
     121    PJ_BUILD_ERR( PJMEDIA_ENCBYTES,         "Media ports have incompatible bytes per frame" ), 
     122    PJ_BUILD_ERR( PJMEDIA_ENCCHANNEL,       "Media ports have incompatible number of channels" ), 
    123123 
    124124    /* Media file errors: */ 
    125     { PJMEDIA_ENOTVALIDWAVE,        "Not a valid WAVE file" }, 
    126     { PJMEDIA_EWAVEUNSUPP,          "Unsupported WAVE file format" }, 
    127     { PJMEDIA_EWAVETOOSHORT,        "WAVE file too short" }, 
    128     { PJMEDIA_EFRMFILETOOBIG,       "Sound frame too large for file buffer"}, 
     125    PJ_BUILD_ERR( PJMEDIA_ENOTVALIDWAVE,    "Not a valid WAVE file" ), 
     126    PJ_BUILD_ERR( PJMEDIA_EWAVEUNSUPP,      "Unsupported WAVE file format" ), 
     127    PJ_BUILD_ERR( PJMEDIA_EWAVETOOSHORT,    "WAVE file too short" ), 
     128    PJ_BUILD_ERR( PJMEDIA_EFRMFILETOOBIG,   "Sound frame too large for file buffer"), 
    129129 
    130130    /* Sound device errors: */ 
    131     { PJMEDIA_ENOSNDREC,            "No suitable sound capture device" }, 
    132     { PJMEDIA_ENOSNDPLAY,           "No suitable sound playback device" }, 
    133     { PJMEDIA_ESNDINDEVID,          "Invalid sound device ID" }, 
    134     { PJMEDIA_ESNDINSAMPLEFMT,      "Invalid sample format for sound device" }, 
     131    PJ_BUILD_ERR( PJMEDIA_ENOSNDREC,        "No suitable sound capture device" ), 
     132    PJ_BUILD_ERR( PJMEDIA_ENOSNDPLAY,       "No suitable sound playback device" ), 
     133    PJ_BUILD_ERR( PJMEDIA_ESNDINDEVID,      "Invalid sound device ID" ), 
     134    PJ_BUILD_ERR( PJMEDIA_ESNDINSAMPLEFMT,  "Invalid sample format for sound device" ), 
    135135}; 
    136136 
  • pjproject/trunk/pjsip/src/pjsip/sip_errno.c

    r491 r534  
    3535{ 
    3636    /* Generic SIP errors */ 
    37     { PJSIP_EBUSY,              "Object is busy" }, 
    38     { PJSIP_ETYPEEXISTS ,       "Object with the same type exists" }, 
    39     { PJSIP_ESHUTDOWN,          "SIP stack shutting down" }, 
    40     { PJSIP_ENOTINITIALIZED,    "SIP object is not initialized." }, 
     37    PJ_BUILD_ERR( PJSIP_EBUSY,          "Object is busy" ), 
     38    PJ_BUILD_ERR( PJSIP_ETYPEEXISTS ,   "Object with the same type exists" ), 
     39    PJ_BUILD_ERR( PJSIP_ESHUTDOWN,      "SIP stack shutting down" ), 
     40    PJ_BUILD_ERR( PJSIP_ENOTINITIALIZED,"SIP object is not initialized." ), 
    4141 
    4242    /* Messaging errors */ 
    43     { PJSIP_EINVALIDMSG,        "Invalid message/syntax error" }, 
    44     { PJSIP_ENOTREQUESTMSG,     "Expecting request message"}, 
    45     { PJSIP_ENOTRESPONSEMSG,    "Expecting response message"}, 
    46     { PJSIP_EMSGTOOLONG,        "Message too long" }, 
    47     { PJSIP_EPARTIALMSG,        "Partial message" }, 
     43    PJ_BUILD_ERR( PJSIP_EINVALIDMSG,    "Invalid message/syntax error" ), 
     44    PJ_BUILD_ERR( PJSIP_ENOTREQUESTMSG, "Expecting request message"), 
     45    PJ_BUILD_ERR( PJSIP_ENOTRESPONSEMSG,"Expecting response message"), 
     46    PJ_BUILD_ERR( PJSIP_EMSGTOOLONG,    "Message too long" ), 
     47    PJ_BUILD_ERR( PJSIP_EPARTIALMSG,    "Partial message" ), 
    4848 
    49     { PJSIP_EINVALIDSTATUS,     "Invalid/unexpected SIP status code"}, 
     49    PJ_BUILD_ERR( PJSIP_EINVALIDSTATUS, "Invalid/unexpected SIP status code"), 
    5050 
    51     { PJSIP_EINVALIDURI,        "Invalid URI" }, 
    52     { PJSIP_EINVALIDSCHEME,     "Invalid URI scheme" }, 
    53     { PJSIP_EMISSINGREQURI,     "Missing Request-URI" }, 
    54     { PJSIP_EINVALIDREQURI,     "Invalid Request URI" }, 
    55     { PJSIP_EURITOOLONG,        "URI is too long" },  
     51    PJ_BUILD_ERR( PJSIP_EINVALIDURI,    "Invalid URI" ), 
     52    PJ_BUILD_ERR( PJSIP_EINVALIDSCHEME, "Invalid URI scheme" ), 
     53    PJ_BUILD_ERR( PJSIP_EMISSINGREQURI, "Missing Request-URI" ), 
     54    PJ_BUILD_ERR( PJSIP_EINVALIDREQURI, "Invalid Request URI" ), 
     55    PJ_BUILD_ERR( PJSIP_EURITOOLONG,    "URI is too long" ),  
    5656 
    57     { PJSIP_EMISSINGHDR,        "Missing required header(s)" }, 
    58     { PJSIP_EINVALIDHDR,        "Invalid header field"}, 
    59     { PJSIP_EINVALIDVIA,        "Invalid Via header" }, 
    60     { PJSIP_EMULTIPLEVIA,       "Multiple Via headers in response" }, 
     57    PJ_BUILD_ERR( PJSIP_EMISSINGHDR,    "Missing required header(s)" ), 
     58    PJ_BUILD_ERR( PJSIP_EINVALIDHDR,    "Invalid header field"), 
     59    PJ_BUILD_ERR( PJSIP_EINVALIDVIA,    "Invalid Via header" ), 
     60    PJ_BUILD_ERR( PJSIP_EMULTIPLEVIA,   "Multiple Via headers in response" ), 
    6161 
    62     { PJSIP_EMISSINGBODY,       "Missing message body" }, 
    63     { PJSIP_EINVALIDMETHOD,     "Invalid/unexpected method" }, 
     62    PJ_BUILD_ERR( PJSIP_EMISSINGBODY,   "Missing message body" ), 
     63    PJ_BUILD_ERR( PJSIP_EINVALIDMETHOD, "Invalid/unexpected method" ), 
    6464 
    6565    /* Transport errors */ 
    66     { PJSIP_EUNSUPTRANSPORT,    "Unsupported transport"}, 
    67     { PJSIP_EPENDINGTX,         "Transmit buffer already pending"}, 
    68     { PJSIP_ERXOVERFLOW,        "Rx buffer overflow"}, 
    69     { PJSIP_EBUFDESTROYED,      "Buffer destroyed"}, 
     66    PJ_BUILD_ERR( PJSIP_EUNSUPTRANSPORT,"Unsupported transport"), 
     67    PJ_BUILD_ERR( PJSIP_EPENDINGTX,     "Transmit buffer already pending"), 
     68    PJ_BUILD_ERR( PJSIP_ERXOVERFLOW,    "Rx buffer overflow"), 
     69    PJ_BUILD_ERR( PJSIP_EBUFDESTROYED,  "Buffer destroyed"), 
    7070 
    7171    /* Transaction errors */ 
    72     { PJSIP_ETSXDESTROYED,      "Transaction has been destroyed"}, 
    73     { PJSIP_ENOTSX,             "No transaction is associated with the object " 
    74                                 "(expecting stateful processing)" }, 
     72    PJ_BUILD_ERR( PJSIP_ETSXDESTROYED,  "Transaction has been destroyed"), 
     73    PJ_BUILD_ERR( PJSIP_ENOTSX,         "No transaction is associated with the object " 
     74                                        "(expecting stateful processing)" ), 
    7575 
    7676    /* URI comparison status */ 
    77     { PJSIP_ECMPSCHEME,         "URI scheme mismatch" }, 
    78     { PJSIP_ECMPUSER,           "URI user part mismatch" }, 
    79     { PJSIP_ECMPPASSWD,         "URI password part mismatch" }, 
    80     { PJSIP_ECMPHOST,           "URI host part mismatch" }, 
    81     { PJSIP_ECMPPORT,           "URI port mismatch" }, 
    82     { PJSIP_ECMPTRANSPORTPRM,   "URI transport param mismatch" }, 
    83     { PJSIP_ECMPTTLPARAM,       "URI ttl param mismatch" }, 
    84     { PJSIP_ECMPUSERPARAM,      "URI user param mismatch" }, 
    85     { PJSIP_ECMPMETHODPARAM,    "URI method param mismatch" }, 
    86     { PJSIP_ECMPMADDRPARAM,     "URI maddr param mismatch" }, 
    87     { PJSIP_ECMPOTHERPARAM,     "URI other param mismatch" }, 
    88     { PJSIP_ECMPHEADERPARAM,    "URI header parameter mismatch" }, 
     77    PJ_BUILD_ERR( PJSIP_ECMPSCHEME,     "URI scheme mismatch" ), 
     78    PJ_BUILD_ERR( PJSIP_ECMPUSER,       "URI user part mismatch" ), 
     79    PJ_BUILD_ERR( PJSIP_ECMPPASSWD,     "URI password part mismatch" ), 
     80    PJ_BUILD_ERR( PJSIP_ECMPHOST,       "URI host part mismatch" ), 
     81    PJ_BUILD_ERR( PJSIP_ECMPPORT,       "URI port mismatch" ), 
     82    PJ_BUILD_ERR( PJSIP_ECMPTRANSPORTPRM,"URI transport param mismatch" ), 
     83    PJ_BUILD_ERR( PJSIP_ECMPTTLPARAM,   "URI ttl param mismatch" ), 
     84    PJ_BUILD_ERR( PJSIP_ECMPUSERPARAM,  "URI user param mismatch" ), 
     85    PJ_BUILD_ERR( PJSIP_ECMPMETHODPARAM,"URI method param mismatch" ), 
     86    PJ_BUILD_ERR( PJSIP_ECMPMADDRPARAM, "URI maddr param mismatch" ), 
     87    PJ_BUILD_ERR( PJSIP_ECMPOTHERPARAM, "URI other param mismatch" ), 
     88    PJ_BUILD_ERR( PJSIP_ECMPHEADERPARAM,"URI header parameter mismatch" ), 
    8989 
    9090    /* Authentication. */ 
    91     { PJSIP_EFAILEDCREDENTIAL,  "Credential failed to authenticate"}, 
    92     { PJSIP_ENOCREDENTIAL,      "No suitable credential"}, 
    93     { PJSIP_EINVALIDALGORITHM,  "Invalid/unsupported digest algorithm" }, 
    94     { PJSIP_EINVALIDQOP,        "Invalid/unsupported digest qop" }, 
    95     { PJSIP_EINVALIDAUTHSCHEME, "Unsupported authentication scheme" }, 
    96     { PJSIP_EAUTHNOPREVCHAL,    "No previous challenge" }, 
    97     { PJSIP_EAUTHNOAUTH,        "No suitable authorization header" }, 
    98     { PJSIP_EAUTHACCNOTFOUND,   "Account or credential not found" }, 
    99     { PJSIP_EAUTHACCDISABLED,   "Account or credential is disabled" }, 
    100     { PJSIP_EAUTHINVALIDREALM,  "Invalid authorization realm"}, 
    101     { PJSIP_EAUTHINVALIDDIGEST, "Invalid authorization digest" }, 
     91    PJ_BUILD_ERR( PJSIP_EFAILEDCREDENTIAL, "Credential failed to authenticate"), 
     92    PJ_BUILD_ERR( PJSIP_ENOCREDENTIAL,     "No suitable credential"), 
     93    PJ_BUILD_ERR( PJSIP_EINVALIDALGORITHM, "Invalid/unsupported digest algorithm" ), 
     94    PJ_BUILD_ERR( PJSIP_EINVALIDQOP,       "Invalid/unsupported digest qop" ), 
     95    PJ_BUILD_ERR( PJSIP_EINVALIDAUTHSCHEME,"Unsupported authentication scheme" ), 
     96    PJ_BUILD_ERR( PJSIP_EAUTHNOPREVCHAL,   "No previous challenge" ), 
     97    PJ_BUILD_ERR( PJSIP_EAUTHNOAUTH,       "No suitable authorization header" ), 
     98    PJ_BUILD_ERR( PJSIP_EAUTHACCNOTFOUND,  "Account or credential not found" ), 
     99    PJ_BUILD_ERR( PJSIP_EAUTHACCDISABLED,  "Account or credential is disabled" ), 
     100    PJ_BUILD_ERR( PJSIP_EAUTHINVALIDREALM, "Invalid authorization realm"), 
     101    PJ_BUILD_ERR( PJSIP_EAUTHINVALIDDIGEST,"Invalid authorization digest" ), 
    102102 
    103103    /* UA/dialog layer. */ 
    104     { PJSIP_EMISSINGTAG,        "Missing From/To tag parameter" }, 
    105     { PJSIP_ENOTREFER,          "Expecting REFER request"} , 
    106     { PJSIP_ENOREFERSESSION,    "Not associated with REFER subscription"}, 
     104    PJ_BUILD_ERR( PJSIP_EMISSINGTAG,    "Missing From/To tag parameter" ), 
     105    PJ_BUILD_ERR( PJSIP_ENOTREFER,      "Expecting REFER request") , 
     106    PJ_BUILD_ERR( PJSIP_ENOREFERSESSION,"Not associated with REFER subscription"), 
    107107 
    108108    /* Invite session. */ 
    109     { PJSIP_ESESSIONTERMINATED, "INVITE session already terminated" }, 
    110     { PJSIP_ESESSIONSTATE,      "Invalid INVITE session state" }, 
     109    PJ_BUILD_ERR( PJSIP_ESESSIONTERMINATED, "INVITE session already terminated" ), 
     110    PJ_BUILD_ERR( PJSIP_ESESSIONSTATE,      "Invalid INVITE session state" ), 
    111111}; 
    112112 
Note: See TracChangeset for help on using the changeset viewer.