#ifndef H_MISC
#define H_MISC
-#include <unistd.h>
-#include <sys/types.h>
+/**
+ * \file lib/misc.h
+ *
+ */
+
+#include <string.h>
+#include <rpm/rpmtypes.h>
+#include <rpm/header.h> /* for headerGetFlags typedef, duh.. */
#ifdef __cplusplus
extern "C" {
#endif
-/*@only@*/ char ** splitString(const char * str, int length, char sep);
-void freeSplitString( /*@only@*/ char ** list);
-void stripTrailingSlashes(char * str);
+/* known arch? */
+RPM_GNUC_INTERNAL
+int rpmIsKnownArch(const char *name);
-int rpmfileexists(const char * filespec);
+RPM_GNUC_INTERNAL
+char * rpmVerifyString(uint32_t verifyResult, const char *pad);
-int rpmvercmp(const char * one, const char * two);
+RPM_GNUC_INTERNAL
+char * rpmFFlagsString(uint32_t fflags, const char *pad);
-/* these are like the normal functions, but they malloc() the space which
- is needed */
-int dosetenv(const char *name, const char *value, int overwrite);
-int doputenv(const char * str);
+typedef char * (*headerTagFormatFunction) (rpmtd td);
+typedef int (*headerTagTagFunction) (Header h, rpmtd td, headerGetFlags hgflags);
-/* These may be called w/ a NULL argument to flush the cache -- they return
- -1 if the user can't be found */
-int unameToUid(char * thisUname, /*@out@*/ uid_t * uid);
-int gnameToGid(char * thisGname, /*@out@*/ gid_t * gid);
+RPM_GNUC_INTERNAL
+headerTagTagFunction rpmHeaderTagFunc(rpmTagVal tag);
-/* Call w/ -1 to flush the cache, returns NULL if the user can't be found */
-char * uidToUname(uid_t uid);
-char * gidToGname(gid_t gid);
+RPM_GNUC_INTERNAL
+headerTagFormatFunction rpmHeaderFormatFuncByName(const char *fmt);
-int makeTempFile(const char * prefix, /*@out@*/ const char ** fnptr,
- /*@out@*/ FD_t * fdptr);
-char * currentDirectory(void); /* result needs to be freed */
+RPM_GNUC_INTERNAL
+headerTagFormatFunction rpmHeaderFormatFuncByValue(rpmtdFormats fmt);
#ifdef __cplusplus
}