swapon(8): adapt to the new swapoff(2) interface

also fix test sys/audit/administrative.c.

Reviewed by:	brooks
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D33343
This commit is contained in:
Konstantin Belousov 2021-12-08 23:05:49 +02:00
parent 9f0fea5d03
commit b49b6e0f95
2 changed files with 3 additions and 9 deletions

View File

@ -789,18 +789,12 @@ swapon_trim(const char *name)
static const char *
swap_on_off_sfile(const char *name, int doingall)
{
struct swapoff_new_args sa;
int error;
if (which_prog == SWAPON)
error = Eflag ? swapon_trim(name) : swapon(name);
else { /* SWAPOFF */
bzero(&sa, sizeof(sa));
sa.name = name;
if (fflag)
sa.flags |= SWAPOFF_FORCE;
error = swapoff((const char *)&sa);
}
else /* SWAPOFF */
error = swapoff(name, fflag ? SWAPOFF_FORCE : 0);
if (error == -1) {
switch (errno) {

View File

@ -1605,7 +1605,7 @@ ATF_TC_BODY(swapoff_failure, tc)
FILE *pipefd = setup(fds, auclass);
/* Failure reason: Block device required */
ATF_REQUIRE_EQ(-1, swapoff(path));
ATF_REQUIRE_EQ(-1, swapoff(path, 0));
check_audit(fds, adregex, pipefd);
}