commit 42797a877f6efb89a46968af77fe8ab9c0e335fa
parent 921f7817b6057ac6d1efd12165e1593b0accfc4e
Author: sin <sin@2f30.org>
Date: Sun, 5 May 2019 21:25:16 +0100
No need for a temporary bops pointer
Diffstat:
M | bcompress.c | | | 38 | ++++++++++---------------------------- |
M | bencrypt.c | | | 40 | +++++++++++----------------------------- |
2 files changed, 21 insertions(+), 57 deletions(-)
diff --git a/bcompress.c b/bcompress.c
@@ -93,7 +93,6 @@ static int
bccreat(struct bctx *bctx, char *path, int mode, struct bparam *bpar)
{
struct cctx *cctx;
- struct bops *bops;
int type;
if (strcasecmp(bpar->calgo, "none") == 0) {
@@ -115,8 +114,7 @@ bccreat(struct bctx *bctx, char *path, int mode, struct bparam *bpar)
cctx = bctx->cctx;
cctx->type = type;
- bops = bencryptops();
- if (bops->creat(bctx, path, mode, bpar) < 0) {
+ if (bencryptops()->creat(bctx, path, mode, bpar) < 0) {
free(cctx);
return -1;
}
@@ -127,7 +125,6 @@ static int
bcopen(struct bctx *bctx, char *path, int flags, int mode, struct bparam *bpar)
{
struct cctx *cctx;
- struct bops *bops;
bctx->cctx = calloc(1, sizeof(struct cctx));
if (bctx->cctx == NULL) {
@@ -136,8 +133,7 @@ bcopen(struct bctx *bctx, char *path, int flags, int mode, struct bparam *bpar)
}
cctx = bctx->cctx;
- bops = bencryptops();
- if (bops->open(bctx, path, flags, mode, bpar) < 0) {
+ if (bencryptops()->open(bctx, path, flags, mode, bpar) < 0) {
free(cctx);
return -1;
}
@@ -149,7 +145,7 @@ bcopen(struct bctx *bctx, char *path, int flags, int mode, struct bparam *bpar)
} else if (strcasecmp(bpar->calgo, "lz4") == 0) {
cctx->type = CDLZ4TYPE;
} else {
- bops->close(bctx);
+ bencryptops()->close(bctx);
free(cctx);
bseterr("invalid compression type: %s", bpar->calgo);
return -1;
@@ -161,7 +157,6 @@ static int
bcput(struct bctx *bctx, void *buf, size_t n, unsigned char *md)
{
struct cctx *cctx;
- struct bops *bops;
struct cd cd;
char *cbuf;
size_t cn;
@@ -215,8 +210,7 @@ bcput(struct bctx *bctx, void *buf, size_t n, unsigned char *md)
cd.size = cn;
packcd(cbuf, &cd);
- bops = bencryptops();
- if (bops->put(bctx, cbuf, CDSIZE + cn, md) < 0) {
+ if (bencryptops()->put(bctx, cbuf, CDSIZE + cn, md) < 0) {
free(cbuf);
return -1;
}
@@ -228,7 +222,6 @@ bcput(struct bctx *bctx, void *buf, size_t n, unsigned char *md)
static int
bcget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n)
{
- struct bops *bops;
struct cd cd;
char *cbuf;
size_t cn, un, size;
@@ -249,8 +242,7 @@ bcget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n)
return -1;
}
- bops = bencryptops();
- if (bops->get(bctx, md, cbuf, &size) < 0) {
+ if (bencryptops()->get(bctx, md, cbuf, &size) < 0) {
free(cbuf);
return -1;
}
@@ -310,45 +302,35 @@ bcget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n)
static int
bcrm(struct bctx *bctx, unsigned char *md)
{
- struct bops *bops = bencryptops();
-
- return bops->rm(bctx, md);
+ return bencryptops()->rm(bctx, md);
}
static int
bcgc(struct bctx *bctx)
{
- struct bops *bops = bencryptops();
-
- return bops->gc(bctx);
+ return bencryptops()->gc(bctx);
}
static int
bccheck(struct bctx *bctx, unsigned char *md)
{
- struct bops *bops = bencryptops();
-
- return bops->check(bctx, md);
+ return bencryptops()->check(bctx, md);
}
static int
bcsync(struct bctx *bctx)
{
- struct bops *bops = bencryptops();
-
- return bops->sync(bctx);
+ return bencryptops()->sync(bctx);
}
static int
bcclose(struct bctx *bctx)
{
struct cctx *cctx = bctx->cctx;
- struct bops *bops;
free(cctx);
- bops = bencryptops();
- return bops->close(bctx);
+ return bencryptops()->close(bctx);
}
struct bops *
diff --git a/bencrypt.c b/bencrypt.c
@@ -96,7 +96,6 @@ static int
becreat(struct bctx *bctx, char *path, int mode, struct bparam *bpar)
{
struct ectx *ectx;
- struct bops *bops;
int type;
/* Determine algorithm type */
@@ -130,8 +129,7 @@ becreat(struct bctx *bctx, char *path, int mode, struct bparam *bpar)
if (bpar->key != NULL)
memcpy(ectx->key, bpar->key, KEYSIZE);
- bops = bstorageops();
- if (bops->creat(bctx, path, mode, bpar) < 0) {
+ if (bstorageops()->creat(bctx, path, mode, bpar) < 0) {
free(ectx);
return -1;
}
@@ -142,7 +140,6 @@ static int
beopen(struct bctx *bctx, char *path, int flags, int mode, struct bparam *bpar)
{
struct ectx *ectx;
- struct bops *bops;
bctx->ectx = calloc(1, sizeof(struct ectx));
if (bctx->ectx == NULL) {
@@ -153,8 +150,7 @@ beopen(struct bctx *bctx, char *path, int flags, int mode, struct bparam *bpar)
if (bpar->key != NULL)
memcpy(ectx->key, bpar->key, KEYSIZE);
- bops = bstorageops();
- if (bops->open(bctx, path, flags, mode, bpar) < 0) {
+ if (bstorageops()->open(bctx, path, flags, mode, bpar) < 0) {
free(ectx);
return -1;
}
@@ -165,7 +161,7 @@ beopen(struct bctx *bctx, char *path, int flags, int mode, struct bparam *bpar)
else if (strcasecmp(bpar->ealgo, "XChaCha20-Poly1305") == 0)
ectx->type = EDCHACHATYPE;
else {
- bops->close(bctx);
+ bstorageops()->close(bctx);
free(ectx);
bseterr("invalid encryption type: %s", bpar->ealgo);
return -1;
@@ -173,7 +169,7 @@ beopen(struct bctx *bctx, char *path, int flags, int mode, struct bparam *bpar)
/* Ensure that if repo is encrypted, a key was provided */
if (ectx->type != EDNONETYPE && bpar->key == NULL) {
- bops->close(bctx);
+ bstorageops()->close(bctx);
free(ectx);
bseterr("expected encryption key");
return -1;
@@ -186,7 +182,6 @@ static int
beput(struct bctx *bctx, void *buf, size_t n, unsigned char *md)
{
struct ectx *ectx;
- struct bops *bops;
struct ed ed;
unsigned char *ebuf;
size_t en;
@@ -239,8 +234,7 @@ beput(struct bctx *bctx, void *buf, size_t n, unsigned char *md)
return -1;
}
- bops = bstorageops();
- if (bops->put(bctx, ebuf, EDSIZE + en, md) < 0) {
+ if (bstorageops()->put(bctx, ebuf, EDSIZE + en, md) < 0) {
free(ebuf);
return -1;
}
@@ -252,7 +246,6 @@ beput(struct bctx *bctx, void *buf, size_t n, unsigned char *md)
static int
beget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n)
{
- struct bops *bops;
struct ed ed;
unsigned char *ebuf;
size_t dn, size;
@@ -266,8 +259,7 @@ beget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n)
return -1;
}
- bops = bstorageops();
- if (bops->get(bctx, md, ebuf, &size) < 0) {
+ if (bstorageops()->get(bctx, md, ebuf, &size) < 0) {
free(ebuf);
return -1;
}
@@ -320,45 +312,35 @@ beget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n)
static int
berm(struct bctx *bctx, unsigned char *md)
{
- struct bops *bops = bstorageops();
-
- return bops->rm(bctx, md);
+ return bstorageops()->rm(bctx, md);
}
static int
begc(struct bctx *bctx)
{
- struct bops *bops = bstorageops();
-
- return bops->gc(bctx);
+ return bstorageops()->gc(bctx);
}
static int
becheck(struct bctx *bctx, unsigned char *md)
{
- struct bops *bops = bstorageops();
-
- return bops->check(bctx, md);
+ return bstorageops()->check(bctx, md);
}
static int
besync(struct bctx *bctx)
{
- struct bops *bops = bstorageops();
-
- return bops->sync(bctx);
+ return bstorageops()->sync(bctx);
}
static int
beclose(struct bctx *bctx)
{
struct ectx *ectx = bctx->ectx;
- struct bops *bops;
free(ectx);
- bops = bstorageops();
- return bops->close(bctx);
+ return bstorageops()->close(bctx);
}
struct bops *