From owner-svn-soc-all@freebsd.org Mon Jul 17 08:35:06 2017 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2BDC6CFFE2B for ; Mon, 17 Jul 2017 08:35:06 +0000 (UTC) (envelope-from kneitinger@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EFF337C546 for ; Mon, 17 Jul 2017 08:35:05 +0000 (UTC) (envelope-from kneitinger@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id v6H8Z5dB018262 for ; Mon, 17 Jul 2017 08:35:05 GMT (envelope-from kneitinger@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id v6H8Z5hi018257 for svn-soc-all@FreeBSD.org; Mon, 17 Jul 2017 08:35:05 GMT (envelope-from kneitinger@FreeBSD.org) Date: Mon, 17 Jul 2017 08:35:05 GMT Message-Id: <201707170835.v6H8Z5hi018257@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to kneitinger@FreeBSD.org using -f From: kneitinger@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r324695 - soc2017/kneitinger/libbe-head/sbin/be MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jul 2017 08:35:06 -0000 Author: kneitinger Date: Mon Jul 17 08:35:04 2017 New Revision: 324695 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=324695 Log: be(1): add libbe calls to corresponding functions Modified: soc2017/kneitinger/libbe-head/sbin/be/be.c Modified: soc2017/kneitinger/libbe-head/sbin/be/be.c ============================================================================== --- soc2017/kneitinger/libbe-head/sbin/be/be.c Mon Jul 17 06:46:57 2017 (r324694) +++ soc2017/kneitinger/libbe-head/sbin/be/be.c Mon Jul 17 08:35:04 2017 (r324695) @@ -188,6 +188,11 @@ err = be_create(be, bootenv); } + switch (err) { + default: + fprintf(stderr, "TODO FILL IN"); + } + return (err); } @@ -309,23 +314,34 @@ static int be_cmd_mount(int argc, char *argv[]) { + int err, flags; char *bootenv; char *mountpoint; + // TODO: force flag? + + flags = 0; + if (argc < 2) { fprintf(stderr, "be mount: missing argument(s)\n"); return (usage(false)); } if (argc > 3) { - fprintf(stderr, "be rename: too many arguments\n"); + fprintf(stderr, "be mount: too many arguments\n"); return (usage(false)); } bootenv = argv[1]; mountpoint = argc == 3 ? argv[2] : NULL; - /* mount logic goes here */ + + err = be_mount(be, bootenv, mountpoint, flags); + + switch (err) { + BE_ERR_SUCCESS: + return (0); + } return (0); } @@ -336,6 +352,7 @@ { char *src; char *dest; + int err; if (argc < 3) { fprintf(stderr, "be rename: missing argument\n"); @@ -350,7 +367,12 @@ src = argv[1]; dest = argv[2]; - /* rename logic goes here */ + err = be_rename(be, src, dest); + + switch (err) { + BE_ERR_SUCCESS: + return (0); + } return (0); } @@ -398,18 +420,17 @@ static int be_cmd_unmount(int argc, char *argv[]) { - int opt; - bool force; - char *cmd, *mountpoint; + int err, flags, opt; + char *cmd, *bootenv; /* Store alias used */ cmd = argv[0]; - force = false; + flags = 0; while ((opt = getopt(argc, argv, "f")) != -1) { switch (opt) { case 'f': - force = true; + flags |= BE_MNT_FORCE; break; default: fprintf(stderr, "be %s: unknown option '-%c'\n", @@ -426,9 +447,14 @@ return (usage(false)); } - mountpoint = argv[0]; + bootenv = argv[0]; - /* unmount logic goes here */ + err = be_unmount(be, bootenv, flags); + + switch (err) { + default: + fprintf(stderr, "TODO FILL ME IN"); + } return (0); } @@ -438,7 +464,7 @@ main(int argc, char *argv[]) { char *command; - int command_index; + int command_index, rc; if (argc < 2) { fprintf(stderr, "missing command\n"); @@ -469,7 +495,7 @@ libbe_print_on_error(be, true); - int rc = command_map[command_index].fn(argc-1, argv+1); + rc = command_map[command_index].fn(argc-1, argv+1); libbe_close(be);