ОСРВ MULTEX-ARM
Полное описание
Загрузка...
Поиск...
Не найдено

Обработка причин ошибок в библиотечных функциях. Подробнее...

Макросы

#define errno   (*p_errno ())
 

Функции

int * p_errno ()
 Адрес переменной errno для каждой задачи / потока.
 

Коды ошибок

#define E2BIG   7
 
#define EACCES   13
 
#define EADDRINUSE   98
 
#define EADDRNOTAVAIL   99
 
#define EADV   68
 
#define EAFNOSUPPORT   97
 
#define EAGAIN   11
 
#define EALREADY   114
 
#define EBADE   52
 
#define EBADF   9
 
#define EBADFD   77
 
#define EBADMSG   74
 
#define EBADR   53
 
#define EBADRQC   56
 
#define EBADSLT   57
 
#define EBFONT   59
 
#define EBUSY   16
 
#define ECANCELED   125
 
#define ECHILD   10
 
#define ECHRNG   44
 
#define ECOMM   70
 
#define ECONNABORTED   103
 
#define ECONNREFUSED   111
 
#define ECONNRESET   104
 
#define EDEADLK   35
 
#define EDEADLOCK   EDEADLK
 
#define EDESTADDRREQ   89
 
#define EDOM   33
 
#define EDOTDOT   73
 
#define EDQUOT   122
 
#define EEXIST   17
 
#define EFAULT   14
 
#define EFBIG   27
 
#define EHOSTDOWN   112
 
#define EHOSTUNREACH   113
 
#define EHWPOISON   133
 
#define EIDRM   43
 
#define EILSEQ   84
 
#define EINPROGRESS   115
 
#define EINTR   4
 
#define EINVAL   22
 
#define EIO   5
 
#define EISCONN   106
 
#define EISDIR   21
 
#define EISNAM   120
 
#define EKEYEXPIRED   127
 
#define EKEYREJECTED   129
 
#define EKEYREVOKED   128
 
#define EL2HLT   51
 
#define EL2NSYNC   45
 
#define EL3HLT   46
 
#define EL3RST   47
 
#define ELIBACC   79
 
#define ELIBBAD   80
 
#define ELIBEXEC   83
 
#define ELIBMAX   82
 
#define ELIBSCN   81
 
#define ELNRNG   48
 
#define ELOOP   40
 
#define EMEDIUMTYPE   124
 
#define EMFILE   24
 
#define EMLINK   31
 
#define EMSGSIZE   90
 
#define EMULTIHOP   72
 
#define ENAMETOOLONG   36
 
#define ENAVAIL   119
 
#define ENETDOWN   100
 
#define ENETRESET   102
 
#define ENETUNREACH   101
 
#define ENFILE   23
 
#define ENOANO   55
 
#define ENOBUFS   105
 
#define ENOCSI   50
 
#define ENODATA   61
 
#define ENODEV   19
 
#define ENOENT   2
 
#define ENOEXEC   8
 
#define ENOKEY   126
 
#define ENOLCK   37
 
#define ENOLINK   67
 
#define ENOMEDIUM   123
 
#define ENOMEM   12
 
#define ENOMSG   42
 
#define ENONET   64
 
#define ENOPKG   65
 
#define ENOPROTOOPT   92
 
#define ENOSPC   28
 
#define ENOSR   63
 
#define ENOSTR   60
 
#define ENOSYS   38
 
#define ENOTBLK   15
 
#define ENOTCONN   107
 
#define ENOTDIR   20
 
#define ENOTEMPTY   39
 
#define ENOTNAM   118
 
#define ENOTRECOVERABLE   131
 
#define ENOTSOCK   88
 
#define ENOTSUP   200
 
#define ENOTTY   25
 
#define ENOTUNIQ   76
 
#define ENXIO   6
 
#define EOPNOTSUPP   95
 
#define EOVERFLOW   75
 
#define EOWNERDEAD   130
 
#define EPERM   1
 
#define EPFNOSUPPORT   96
 
#define EPIPE   32
 
#define EPROTO   71
 
#define EPROTONOSUPPORT   93
 
#define EPROTOTYPE   91
 
#define ERANGE   34
 
#define EREMCHG   78
 
#define EREMOTE   66
 
#define EREMOTEIO   121
 
#define ERESTART   85
 
#define ERFKILL   132
 
#define EROFS   30
 
#define ESHUTDOWN   108
 
#define ESOCKTNOSUPPORT   94
 
#define ESPIPE   29
 
#define ESRCH   3
 
#define ESRMNT   69
 
#define ESTALE   116
 
#define ESTRPIPE   86
 
#define ETIME   62
 
#define ETIMEDOUT   110
 
#define ETOOMANYREFS   109
 
#define ETXTBSY   26
 
#define EUCLEAN   117
 
#define EUNATCH   49
 
#define EUSERS   87
 
#define EWOULDBLOCK   EAGAIN
 
#define EXDEV   18
 
#define EXFULL   54
 

Подробное описание

См. стандарт C11 7.5.

См. также
C11 standard 7.5.
Заметки
В основном используется 'внешними' библиотеками, например, FFMPEG или LIBZ.

Макросы

◆ E2BIG

#define E2BIG   7

Argument list too long

◆ EACCES

#define EACCES   13

Permission denied

◆ EADDRINUSE

#define EADDRINUSE   98

Address already in use

◆ EADDRNOTAVAIL

#define EADDRNOTAVAIL   99

Cannot assign requested address

◆ EADV

#define EADV   68

Advertise error

◆ EAFNOSUPPORT

#define EAFNOSUPPORT   97

Address family not supported by protocol

◆ EAGAIN

#define EAGAIN   11

Try again

◆ EALREADY

#define EALREADY   114

Operation already in progress

◆ EBADE

#define EBADE   52

Invalid exchange

◆ EBADF

#define EBADF   9

Bad file number

◆ EBADFD

#define EBADFD   77

File descriptor in bad state

◆ EBADMSG

#define EBADMSG   74

Not a data message

◆ EBADR

#define EBADR   53

Invalid request descriptor

◆ EBADRQC

#define EBADRQC   56

Invalid request code

◆ EBADSLT

#define EBADSLT   57

Invalid slot

◆ EBFONT

#define EBFONT   59

Bad font file format

◆ EBUSY

#define EBUSY   16

Device or resource busy

◆ ECANCELED

#define ECANCELED   125

Operation Canceled

◆ ECHILD

#define ECHILD   10

No child processes

◆ ECHRNG

#define ECHRNG   44

Channel number out of range

◆ ECOMM

#define ECOMM   70

Communication error on send

◆ ECONNABORTED

#define ECONNABORTED   103

Software caused connection abort

◆ ECONNREFUSED

#define ECONNREFUSED   111

Connection refused

◆ ECONNRESET

#define ECONNRESET   104

Connection reset by peer

◆ EDEADLK

#define EDEADLK   35

Resource deadlock would occur

◆ EDEADLOCK

#define EDEADLOCK   EDEADLK

◆ EDESTADDRREQ

#define EDESTADDRREQ   89

Destination address required

◆ EDOM

#define EDOM   33

Math argument out of domain of func

◆ EDOTDOT

#define EDOTDOT   73

RFS specific error

◆ EDQUOT

#define EDQUOT   122

Quota exceeded

◆ EEXIST

#define EEXIST   17

File exists

◆ EFAULT

#define EFAULT   14

Bad address

◆ EFBIG

#define EFBIG   27

File too large

◆ EHOSTDOWN

#define EHOSTDOWN   112

Host is down

◆ EHOSTUNREACH

#define EHOSTUNREACH   113

No route to host

◆ EHWPOISON

#define EHWPOISON   133

Memory page has hardware error

◆ EIDRM

#define EIDRM   43

Identifier removed

◆ EILSEQ

#define EILSEQ   84

Illegal byte sequence

◆ EINPROGRESS

#define EINPROGRESS   115

Operation now in progress

◆ EINTR

#define EINTR   4

Interrupted system call

◆ EINVAL

#define EINVAL   22

Invalid argument

◆ EIO

#define EIO   5

I/O error

◆ EISCONN

#define EISCONN   106

Transport endpoint is already connected

◆ EISDIR

#define EISDIR   21

Is a directory

◆ EISNAM

#define EISNAM   120

Is a named type file

◆ EKEYEXPIRED

#define EKEYEXPIRED   127

Key has expired

◆ EKEYREJECTED

#define EKEYREJECTED   129

Key was rejected by service

◆ EKEYREVOKED

#define EKEYREVOKED   128

Key has been revoked

◆ EL2HLT

#define EL2HLT   51

Level 2 halted

◆ EL2NSYNC

#define EL2NSYNC   45

Level 2 not synchronized

◆ EL3HLT

#define EL3HLT   46

Level 3 halted

◆ EL3RST

#define EL3RST   47

Level 3 reset

◆ ELIBACC

#define ELIBACC   79

Can not access a needed shared library

◆ ELIBBAD

#define ELIBBAD   80

Accessing a corrupted shared library

◆ ELIBEXEC

#define ELIBEXEC   83

Cannot exec a shared library directly

◆ ELIBMAX

#define ELIBMAX   82

Attempting to link in too many shared libraries

◆ ELIBSCN

#define ELIBSCN   81

.lib section in a.out corrupted

◆ ELNRNG

#define ELNRNG   48

Link number out of range

◆ ELOOP

#define ELOOP   40

Too many symbolic links encountered

◆ EMEDIUMTYPE

#define EMEDIUMTYPE   124

Wrong medium type

◆ EMFILE

#define EMFILE   24

Too many open files

◆ EMLINK

#define EMLINK   31

Too many links

◆ EMSGSIZE

#define EMSGSIZE   90

Message too long

◆ EMULTIHOP

#define EMULTIHOP   72

Multihop attempted

◆ ENAMETOOLONG

#define ENAMETOOLONG   36

File name too long

◆ ENAVAIL

#define ENAVAIL   119

No XENIX semaphores available

◆ ENETDOWN

#define ENETDOWN   100

Network is down

◆ ENETRESET

#define ENETRESET   102

Network dropped connection because of reset

◆ ENETUNREACH

#define ENETUNREACH   101

Network is unreachable

◆ ENFILE

#define ENFILE   23

File table overflow

◆ ENOANO

#define ENOANO   55

No anode

◆ ENOBUFS

#define ENOBUFS   105

No buffer space available

◆ ENOCSI

#define ENOCSI   50

No CSI structure available

◆ ENODATA

#define ENODATA   61

No data available

◆ ENODEV

#define ENODEV   19

No such device

◆ ENOENT

#define ENOENT   2

No such file or directory

◆ ENOEXEC

#define ENOEXEC   8

Exec format error

◆ ENOKEY

#define ENOKEY   126

Required key not available

◆ ENOLCK

#define ENOLCK   37

No record locks available

◆ ENOLINK

#define ENOLINK   67

Link has been severed

◆ ENOMEDIUM

#define ENOMEDIUM   123

No medium found

◆ ENOMEM

#define ENOMEM   12

Out of memory

◆ ENOMSG

#define ENOMSG   42

No message of desired type

◆ ENONET

#define ENONET   64

Machine is not on the network

◆ ENOPKG

#define ENOPKG   65

Package not installed

◆ ENOPROTOOPT

#define ENOPROTOOPT   92

Protocol not available

◆ ENOSPC

#define ENOSPC   28

No space left on device

◆ ENOSR

#define ENOSR   63

Out of streams resources

◆ ENOSTR

#define ENOSTR   60

Device not a stream

◆ ENOSYS

#define ENOSYS   38

Function not implemented

◆ ENOTBLK

#define ENOTBLK   15

Block device required

◆ ENOTCONN

#define ENOTCONN   107

Transport endpoint is not connected

◆ ENOTDIR

#define ENOTDIR   20

Not a directory

◆ ENOTEMPTY

#define ENOTEMPTY   39

Directory not empty

◆ ENOTNAM

#define ENOTNAM   118

Not a XENIX named type file

◆ ENOTRECOVERABLE

#define ENOTRECOVERABLE   131

Robust mutex: State not recoverable

◆ ENOTSOCK

#define ENOTSOCK   88

Socket operation on non-socket

◆ ENOTSUP

#define ENOTSUP   200

◆ ENOTTY

#define ENOTTY   25

Not a typewriter

◆ ENOTUNIQ

#define ENOTUNIQ   76

Name not unique on network

◆ ENXIO

#define ENXIO   6

No such device or address

◆ EOPNOTSUPP

#define EOPNOTSUPP   95

Operation not supported on transport endpoint

◆ EOVERFLOW

#define EOVERFLOW   75

Value too large for defined data type

◆ EOWNERDEAD

#define EOWNERDEAD   130

Robust mutex: Owner died

◆ EPERM

#define EPERM   1

Operation not permitted

◆ EPFNOSUPPORT

#define EPFNOSUPPORT   96

Protocol family not supported

◆ EPIPE

#define EPIPE   32

Broken pipe

◆ EPROTO

#define EPROTO   71

Protocol error

◆ EPROTONOSUPPORT

#define EPROTONOSUPPORT   93

Protocol not supported

◆ EPROTOTYPE

#define EPROTOTYPE   91

Protocol wrong type for socket

◆ ERANGE

#define ERANGE   34

Math result not representable

◆ EREMCHG

#define EREMCHG   78

Remote address changed

◆ EREMOTE

#define EREMOTE   66

Object is remote

◆ EREMOTEIO

#define EREMOTEIO   121

Remote I/O error

◆ ERESTART

#define ERESTART   85

Interrupted system call should be restarted

◆ ERFKILL

#define ERFKILL   132

Operation not possible due to RF-kill

◆ EROFS

#define EROFS   30

Read-only file system

◆ errno

#define errno   (*p_errno ())

Переменная текущей задачи, хранящая в себе код ошибки.

◆ ESHUTDOWN

#define ESHUTDOWN   108

Cannot send after transport endpoint shutdown

◆ ESOCKTNOSUPPORT

#define ESOCKTNOSUPPORT   94

Socket type not supported

◆ ESPIPE

#define ESPIPE   29

Illegal seek

◆ ESRCH

#define ESRCH   3

No such process

◆ ESRMNT

#define ESRMNT   69

Srmount error

◆ ESTALE

#define ESTALE   116

Stale NFS file handle

◆ ESTRPIPE

#define ESTRPIPE   86

Streams pipe error

◆ ETIME

#define ETIME   62

Timer expired

◆ ETIMEDOUT

#define ETIMEDOUT   110

Connection timed out

◆ ETOOMANYREFS

#define ETOOMANYREFS   109

Too many references: cannot splice

◆ ETXTBSY

#define ETXTBSY   26

Text file busy

◆ EUCLEAN

#define EUCLEAN   117

Structure needs cleaning

◆ EUNATCH

#define EUNATCH   49

Protocol driver not attached

◆ EUSERS

#define EUSERS   87

Too many users

◆ EWOULDBLOCK

#define EWOULDBLOCK   EAGAIN

Operation would block

◆ EXDEV

#define EXDEV   18

Cross-device link

◆ EXFULL

#define EXFULL   54

Exchange full

Функции

◆ p_errno()

int * p_errno ( )
inline

Функция определяет на каком ядре выполняется задача и возвращает переменную errno в зависимости от этого.

Возвращает
Указатель на переменную errno.