long *lastissue, const char **errstr);
time_t extract_bouncetime(char *line, const char **errstr);
int open_subscriber_directory(int listfd, enum subtype typesub, const char **dir);
-bool do_unsubscribe(int listfd, const char *address, enum subtype typesub);
+bool unsubscribe(int listfd, const char *address, enum subtype typesub);
#define MY_ASSERT(expression) if (!(expression)) { \
errno = 0; \
}
bool
-do_unsubscribe(int listfd, const char *address, enum subtype typesub)
+unsubscribe(int listfd, const char *address, enum subtype typesub)
{
struct dirent *dp;
DIR *dir;
switch (typesub) {
case SUB_ALL:
- if (!do_unsubscribe(listfd, address, SUB_NORMAL))
+ if (!unsubscribe(listfd, address, SUB_NORMAL))
ret = false;
- if (!do_unsubscribe(listfd, address, SUB_DIGEST))
+ if (!unsubscribe(listfd, address, SUB_DIGEST))
ret = false;
- if (!do_unsubscribe(listfd, address, SUB_NOMAIL))
+ if (!unsubscribe(listfd, address, SUB_NOMAIL))
ret = false;
return (ret);
case SUB_NORMAL:
fputs("john@doe.org\n", f);
fclose(f);
- ATF_REQUIRE(do_unsubscribe(listfd, "john@doe.org", SUB_ALL));
+ ATF_REQUIRE(unsubscribe(listfd, "john@doe.org", SUB_ALL));
ATF_REQUIRE_EQ_MSG(access("list/subscribers.d/j", F_OK), -1, "Not unsubscribed");
ATF_REQUIRE_EQ_MSG(access("list/digesters.d/j", F_OK), -1, "Not unsubscribed from digest");
if (!atf_utils_compare_file("list/nomailsubs.d/j", "jane@doe.org\n")) {
atf_tc_fail("Not unsubscribed from nomail");
}
- ATF_REQUIRE(do_unsubscribe(listfd, "jane@doe.org", SUB_NOMAIL));
+ ATF_REQUIRE(unsubscribe(listfd, "jane@doe.org", SUB_NOMAIL));
ATF_REQUIRE_EQ_MSG(access("list/nomailsubs.d/j", F_OK), -1, "Not unsubscribed from nomail");
- ATF_REQUIRE(!do_unsubscribe(listfd, "plop@meh", SUB_BOTH));
+ ATF_REQUIRE(!unsubscribe(listfd, "plop@meh", SUB_BOTH));
rmdir("list/subscribers.d");
- ATF_REQUIRE(!do_unsubscribe(listfd, "plop@meh", SUB_NORMAL));
+ ATF_REQUIRE(!unsubscribe(listfd, "plop@meh", SUB_NORMAL));
mkdir("list/subscribers.d", 0755);
f = fopen("list/nomailsubs.d/j", "w");
fclose(f);
chmod("list/nomailsubs.d/j", 0111);
- ATF_REQUIRE(do_unsubscribe(listfd, "plop@meh", SUB_NOMAIL));
+ ATF_REQUIRE(unsubscribe(listfd, "plop@meh", SUB_NOMAIL));
chmod("list/nomailsubs.d/j", 0644);
- ATF_REQUIRE(do_unsubscribe(listfd, "plop@meh", SUB_NOMAIL));
+ ATF_REQUIRE(unsubscribe(listfd, "plop@meh", SUB_NOMAIL));
unlink("list/nomailsubs.d/j");
f = fopen("list/nomailsubs.d/j", "w");
fputs("john@doe.org\n", f);
fputs("jane@doe.org\n", f);
fclose(f);
- ATF_REQUIRE(do_unsubscribe(listfd, "plop@meh", SUB_NOMAIL));
- ATF_REQUIRE(!do_unsubscribe(-1, "plop@meh", SUB_ALL));
+ ATF_REQUIRE(unsubscribe(listfd, "plop@meh", SUB_NOMAIL));
+ ATF_REQUIRE(!unsubscribe(-1, "plop@meh", SUB_ALL));
}