diff --git a/lib/zip_algorithm_zstd.c b/lib/zip_algorithm_zstd.c
index b7aca8b..025a46d 100644
--- a/lib/zip_algorithm_zstd.c
+++ b/lib/zip_algorithm_zstd.c
@@ -54,13 +54,12 @@
 allocate(bool compress, int compression_flags, zip_error_t *error) {
     struct ctx *ctx;
 
-    if (compression_flags < 0 || compression_flags > INT_MAX) {
-	zip_error_set(error, ZIP_ER_INVAL, 0);
-	return NULL;
+    /* 0: let zstd choose */
+    if (compression_flags < 0 || compression_flags > 9) {
+	compression_flags = 0;
     }
 
     if ((ctx = (struct ctx *)malloc(sizeof(*ctx))) == NULL) {
-	zip_error_set(error, ZIP_ER_MEMORY, 0);
 	return NULL;
     }
 
@@ -142,14 +141,22 @@
     ctx->out.pos = 0;
     ctx->out.size = 0;
     if (ctx->compress) {
+	size_t ret;
 	ctx->zcstream = ZSTD_createCStream();
 	if (ctx->zcstream == NULL) {
+	    zip_error_set(ctx->error, ZIP_ER_MEMORY, 0);
+	    return false;
+	}
+	ret = ZSTD_initCStream(ctx->zcstream, ctx->compression_flags);
+	if (ZSTD_isError(ret)) {
+	    zip_error_set(ctx->error, ZIP_ER_ZLIB, map_error(ret));
 	    return false;
 	}
     }
     else {
 	ctx->zdstream = ZSTD_createDStream();
 	if (ctx->zdstream == NULL) {
+	    zip_error_set(ctx->error, ZIP_ER_MEMORY, 0);
 	    return false;
 	}
     }
