• Gerrit Renker's avatar
    [DCCP]: Convert Reset code into socket error number · d8ef2c29
    Gerrit Renker authored
    This adds support for converting the 11 currently defined Reset codes into system
    error numbers, which are stored in sk_err for further interpretation.
    
    This makes the externally visible API behaviour similar to TCP, since a client
    connecting to a non-existing port will experience ECONNREFUSED.
    
    * Code 0, Unspecified, is interpreted as non-error (0);
    * Code 1, Closed (normal termination), also maps into 0;
    * Code 2, Aborted, maps into "Connection reset by peer" (ECONNRESET);
    * Code 3, No Connection and
      Code 7, Connection Refused, map into "Connection refused" (ECONNREFUSED);
    * Code 4, Packet Error, maps into "No message of desired type" (ENOMSG);
    * Code 5, Option Error, maps into "Illegal byte sequence" (EILSEQ);
    * Code 6, Mandatory Error, maps into "Operation not supported on transport endpoint" (EOPNOTSUPP);
    * Code 8, Bad Service Code, maps into "Invalid request code" (EBADRQC);
    * Code 9, Too Busy, maps into "Too many users" (EUSERS);
    * Code 10, Bad Init Cookie, maps into "Invalid request descriptor" (EBADR);
    * Code 11, Aggression Penalty, maps into "Quota exceeded" (EDQUOT)
      which makes sense in terms of using more than the `fair share' of bandwidth.
    Signed-off-by: default avatarGerrit Renker <gerrit@erg.abdn.ac.uk>
    Acked-by: default avatarIan McDonald <ian.mcdonald@jandi.co.nz>
    Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    d8ef2c29
input.c 18.8 KB