Annotation of embedaddon/libpdel/ports/Linux/hacks.h, revision 1.1

1.1     ! misho       1: 
        !             2: #define _XOPEN_SOURCE  600
        !             3: #define _GNU_SOURCE    1
        !             4: #define _BSD_SOURCE    1
        !             5: #define _ISOC99_SOURCE 1
        !             6: 
        !             7: #include <string.h>            /* memcpy(), etc. */
        !             8: #include <netinet/in.h>                /* htonl(), etc. */
        !             9: 
        !            10: /* Linux does not have these 'errno' values */
        !            11: #define EFTYPE         EINVAL
        !            12: #define EPROGMISMATCH  EINVAL
        !            13: 
        !            14: #define LLONG_MAX      9223372036854775807LL
        !            15: #define LLONG_MIN      (-LLONG_MAX - 1LL)
        !            16: 
        !            17: #define        INFTIM          (-1)
        !            18: 
        !            19: #define REG_STARTEND   0
        !            20: 
        !            21: #define ALIGNBYTES             (sizeof(size_t) - 1)            /* ?? */
        !            22: #define ALIGN(p)               (((unsigned)(p) + ALIGNBYTES) & ~ALIGNBYTES)
        !            23: 
        !            24: #define mergesort(a,b,c,d)     (qsort(a,b,c,d), 0)
        !            25: #define strlcpy(dst, src, size)        snprintf(dst, size, "%s", src)
        !            26: #define strlcat(dst, src, size)        snprintf((dst) + strlen(dst), \
        !            27:                                    (size) - strlen(dst), "%s", src)
        !            28: 
        !            29: #include <libio.h>
        !            30: #define funopen1(c, m, rf, wf, sf, cf)                                 \
        !            31:        fopencookie(c, m,                                               \
        !            32:            ({                                                          \
        !            33:                _IO_cookie_io_functions_t _funcs;                       \
        !            34:                _funcs.read = (cookie_read_function_t *)(rf);           \
        !            35:                _funcs.write = (cookie_write_function_t *)(wf);         \
        !            36:                _funcs.seek = (cookie_seek_function_t *)(sf);           \
        !            37:                _funcs.close = (cookie_close_function_t *)(cf);         \
        !            38:                _funcs;                                                 \
        !            39:             }))
        !            40: #define funopen(c, rf, wf, sf, cf) \
        !            41:                        funopen1(c, "r+", rf, wf, sf, cf)
        !            42: #define fropen(c, rf)  funopen1(c, "r", rf, NULL, NULL, NULL)
        !            43: #define fwopen(c, rf)  funopen1(c, "w", NULL, wf, NULL, NULL)
        !            44: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>