X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fcommon.h;h=d0cc4e829b59a2bf895248ac8bf7664b727e655e;hb=bc51ef217e871b80152eccd4e5f32659500f75f3;hp=5b9f02cc4d8b1fbdda48fa22f7cf152f9da71dd5;hpb=aec55dfa7f94fd4ff99cec0767e6ffed93a21339;p=collectd.git diff --git a/src/common.h b/src/common.h index 5b9f02cc..d0cc4e82 100644 --- a/src/common.h +++ b/src/common.h @@ -98,7 +98,7 @@ ssize_t swrite (int fd, const void *buf, size_t count); * * DESCRIPTION * Splits a string into parts and stores pointers to the parts in `fields'. - * The characters split at are ` ' (space) and "\t" (tab). + * The characters split at are: " ", "\t", "\r", and "\n". * * PARAMETERS * `string' String to split. This string will be modified. `fields' will @@ -179,6 +179,29 @@ int strsubstitute (char *str, char c_from, char c_to); /* * NAME + * strunescape + * + * DESCRIPTION + * Replaces any escaped characters in a string with the appropriate special + * characters. The following escaped characters are recognized: + * + * \t -> + * \n -> + * \r -> + * + * For all other escacped characters only the backslash will be removed. + * + * PARAMETERS + * `buf' String to be unescaped. + * `buf_len' Length of the string, including the terminating null-byte. + * + * RETURN VALUE + * Returns zero upon success, a value less than zero else. + */ +int strunescape (char *buf, size_t buf_len); + +/* + * NAME * timeval_cmp * * DESCRIPTION @@ -199,6 +222,13 @@ int timeval_cmp (struct timeval tv0, struct timeval tv1, struct timeval *delta); (tv).tv_usec = (tv).tv_usec % 1000000; \ } while (0) +/* make sure tv_sec stores less than a second */ +#define NORMALIZE_TIMESPEC(tv) \ + do { \ + (tv).tv_sec += (tv).tv_nsec / 1000000000; \ + (tv).tv_nsec = (tv).tv_nsec % 1000000000; \ + } while (0) + int check_create_dir (const char *file_orig); #ifdef HAVE_LIBKSTAT