#endif
#if defined(__APPLE__)
-#define libbsd_strong_alias(alias, symbol) \
+#define libbsd_strong_alias(symbol, alias) \
__asm__(".globl _" #alias); \
__asm__(".set _" #alias ", _" #symbol); \
extern __typeof(symbol) alias
#elif !defined(_MSC_VER)
-#define libbsd_strong_alias(alias, symbol) \
+#define libbsd_strong_alias(symbol, alias) \
extern __typeof__(symbol) alias __attribute__((__alias__(#symbol)))
#endif
#ifdef __ELF__
# if __has_attribute(symver)
/* The symver attribute is supported since gcc 10.x. */
-#define libbsd_symver_default(alias, symbol, version) \
+#define libbsd_symver_default(symbol, alias, version) \
extern __typeof__(symbol) symbol \
__attribute__((__symver__(#alias "@@" #version)))
-#define libbsd_symver_variant(alias, symbol, version) \
+#define libbsd_symver_variant(symbol, alias, version) \
extern __typeof__(symbol) symbol \
__attribute__((__symver__(#alias "@" #version)))
-#define libbsd_symver_weak(alias, symbol, version) \
+#define libbsd_symver_weak(symbol, alias, version) \
extern __typeof__(symbol) symbol \
__attribute__((__symver__(#alias "@" #version), __weak__))
# else
-#define libbsd_symver_default(alias, symbol, version) \
+#define libbsd_symver_default(symbol, alias, version) \
__asm__(".symver " #symbol "," #alias "@@" #version)
-#define libbsd_symver_variant(alias, symbol, version) \
+#define libbsd_symver_variant(symbol, alias, version) \
__asm__(".symver " #symbol "," #alias "@" #version)
-#define libbsd_symver_weak(alias, symbol, version) \
- libbsd_symver_variant(alias, symbol, version); \
+#define libbsd_symver_weak(symbol, alias, version) \
+ libbsd_symver_variant(symbol, alias, version); \
extern __typeof__(symbol) alias \
__attribute__((__weak__))
# endif
#else
-#define libbsd_symver_default(alias, symbol, version) \
- libbsd_strong_alias(alias, symbol)
+#define libbsd_symver_default(symbol, alias, version) \
+ libbsd_strong_alias(symbol, alias)
-#define libbsd_symver_variant(alias, symbol, version)
+#define libbsd_symver_variant(symbol, alias, version)
-#define libbsd_symver_weak(alias, symbol, version)
+#define libbsd_symver_weak(symbol, alias, version)
#endif
#endif
libbsd_link_warning(MD5Init,
"The MD5Init() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5Init, libbsd_MD5Init, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5Init, MD5Init, LIBBSD_0.0);
void
libbsd_MD5Update(MD5_CTX *context, const uint8_t *data, size_t len)
libbsd_link_warning(MD5Update,
"The MD5Update() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5Update, libbsd_MD5Update, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5Update, MD5Update, LIBBSD_0.0);
void
libbsd_MD5Pad(MD5_CTX *context)
libbsd_link_warning(MD5Pad,
"The MD5Pad() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5Pad, libbsd_MD5Pad, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5Pad, MD5Pad, LIBBSD_0.0);
void
libbsd_MD5Final(uint8_t digest[MD5_DIGEST_LENGTH], MD5_CTX *context)
libbsd_link_warning(MD5Final,
"The MD5Final() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5Final, libbsd_MD5Final, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5Final, MD5Final, LIBBSD_0.0);
void
libbsd_MD5Transform(uint32_t state[4], const uint8_t block[MD5_BLOCK_LENGTH])
libbsd_link_warning(MD5Transform,
"The MD5Transform() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5Transform, libbsd_MD5Transform, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5Transform, MD5Transform, LIBBSD_0.0);
char *
libbsd_MD5End(MD5_CTX *context, char *buf)
libbsd_link_warning(MD5End,
"The MD5End() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5End, libbsd_MD5End, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5End, MD5End, LIBBSD_0.0);
char *
libbsd_MD5File(const char *filename, char *buf)
libbsd_link_warning(MD5File,
"The MD5File() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5File, libbsd_MD5File, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5File, MD5File, LIBBSD_0.0);
char *
libbsd_MD5FileChunk(const char *filename, char *buf, off_t offset, off_t length)
libbsd_link_warning(MD5FileChunk,
"The MD5FileChunk() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5FileChunk, libbsd_MD5FileChunk, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5FileChunk, MD5FileChunk, LIBBSD_0.0);
char *
libbsd_MD5Data(const uint8_t *data, size_t len, char *buf)
libbsd_link_warning(MD5Data,
"The MD5Data() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5Data, libbsd_MD5Data, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5Data, MD5Data, LIBBSD_0.0);
*++nul = '\0';
}
}
-libbsd_symver_default(setproctitle, setproctitle_impl, LIBBSD_0.5);
+libbsd_symver_default(setproctitle_impl, setproctitle, LIBBSD_0.5);
/* The original function introduced in 0.2 was a stub, it only got implemented
* in 0.5, make the implementation available in the old version as an alias
* for code linking against that version, and change the default to use the
* new version, so that new code depends on the implemented version. */
#if defined(libbsd_strong_alias)
-libbsd_strong_alias(setproctitle_stub, setproctitle_impl);
+libbsd_strong_alias(setproctitle_impl, setproctitle_stub);
#else
void
setproctitle_stub(const char *fmt, ...)
__attribute__((__alias__("setproctitle_impl")));
#endif
-libbsd_symver_variant(setproctitle, setproctitle_stub, LIBBSD_0.2);
+libbsd_symver_variant(setproctitle_stub, setproctitle, LIBBSD_0.2);
{
return strnunvisx(dst, dlen, src, 0);
}
-libbsd_symver_default(strnunvis, strnunvis_openbsd, LIBBSD_0.2);
+libbsd_symver_default(strnunvis_openbsd, strnunvis, LIBBSD_0.2);
int
strnunvis_netbsd(char *, size_t, const char *);
{
return strnunvisx(dst, dlen, src, 0);
}
-libbsd_symver_variant(strnunvis, strnunvis_netbsd, LIBBSD_0.9.1);
+libbsd_symver_variant(strnunvis_netbsd, strnunvis, LIBBSD_0.9.1);
{
return istrsenvisxl(mbdst, &dlen, mbsrc, flags, "", NULL);
}
-libbsd_symver_default(strnvis, strnvis_openbsd, LIBBSD_0.2);
+libbsd_symver_default(strnvis_openbsd, strnvis, LIBBSD_0.2);
int
strnvis_netbsd(char *, size_t, const char *, int);
{
return istrsenvisxl(mbdst, &dlen, mbsrc, flags, "", NULL);
}
-libbsd_symver_variant(strnvis, strnvis_netbsd, LIBBSD_0.9.1);
+libbsd_symver_variant(strnvis_netbsd, strnvis, LIBBSD_0.9.1);
int
stravis(char **mbdstp, const char *mbsrc, int flags)