46 inline static size_t indi_strlcpy(
char * dst,
const char * src,
size_t maxlen)
48 const size_t srclen = strlen(src);
49 if (srclen + 1 < maxlen)
51 memcpy(dst, src, srclen + 1);
55 memcpy(dst, src, maxlen - 1);
56 dst[maxlen - 1] =
'\0';
76 int mkdir(
const char *path, mode_t mode);
81 int mkpath(std::string path, mode_t mode);
86 std::string
format_time(
const std::tm &tm,
const char *format);
91 void replace_all(std::string &subject,
const std::string &search,
const std::string &replace);
97 inline size_t strlcpy(
char * dst,
const char * src,
size_t maxlen)
99 return indi_strlcpy(dst, src, maxlen);
107 inline size_t strlcpy(
char (&dst)[N],
const char * src)
109 return indi_strlcpy(dst, src, N);
Namespace to encapsulate INDI client, drivers, and mediator classes.
int mkdir(const char *path, mode_t mode)
std::string format_time(const std::tm &tm, const char *format)
void replace_all(std::string &subject, const std::string &search, const std::string &replace)
int mkpath(std::string s, mode_t mode)