From 2e5fbe5a599e419c57f2d1ad1b7467446310ccb8 Mon Sep 17 00:00:00 2001 From: Greg Hudson Date: Fri, 19 Jan 2001 09:50:55 +0000 Subject: [PATCH] STABLE10-add-fs-crypt-commands-20010115 Add fs command to control cryptall (cherry picked from commit e51aacb61474150303cd0f97c4854af702204eee) --- src/venus/fs.c | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/src/venus/fs.c b/src/venus/fs.c index 74e4d8cae..e3aa7fc72 100644 --- a/src/venus/fs.c +++ b/src/venus/fs.c @@ -2764,6 +2764,61 @@ static StoreBehindCmd(as) return error; } + +static afs_int32 SetCryptCmd(as) + struct cmd_syndesc *as; +{ + afs_int32 code = 0, flag; + struct ViceIoctl blob; + char *tp; + + tp = as->parms[0].items->data; + if (strcmp(tp, "on") == 0) + flag = 1; + else if (strcmp(tp, "off") == 0) + flag = 0; + else { + fprintf (stderr, "%s: %s must be \"on\" or \"off\".\n", pn, tp); + return EINVAL; + } + + blob.in = (char *) &flag; + blob.in_size = sizeof(flag); + blob.out_size = 0; + code = pioctl(0, VIOC_SETRXKCRYPT, &blob, 1); + if (code) + Die(code, (char *) 0); + return 0; +} + + +static afs_int32 GetCryptCmd(as) + struct cmd_syndesc *as; +{ + afs_int32 code = 0, flag; + struct ViceIoctl blob; + char *tp; + + blob.in = (char *) 0; + blob.in_size = 0; + blob.out_size = sizeof(flag); + blob.out = space; + + code = pioctl(0, VIOC_GETRXKCRYPT, &blob, 1); + + if (code) Die(code, (char *) 0); + else { + tp = space; + bcopy(tp, &foo, sizeof(int32)); + printf("Security level is currently "); + if (foo == 1) + printf("crypt (data security).\n"); + else + printf("clear.\n"); + } + return 0; +} + #include "AFS_component_version_number.c" main(argc, argv) @@ -2987,6 +3042,9 @@ defect 3069 cmd_AddParm(ts, "-verbose", CMD_FLAG, CMD_OPTIONAL, "show status"); cmd_CreateAlias(ts, "sb"); + ts = cmd_CreateSyntax("setcrypt", SetCryptCmd, 0, "set cache manager encryption flag"); + cmd_AddParm(ts, "-crypt", CMD_SINGLE, 0, "on or off"); + ts = cmd_CreateSyntax("rxstatproc", RxStatProcCmd, 0, "Manage per process RX statistics"); cmd_AddParm(ts, "-enable", CMD_FLAG, CMD_OPTIONAL, -- 2.39.5