Fix invalid assert in CRYPTO_ctr128_encrypt.

As with CRYPTO_ctr128_encrypt_ctr32, NULL in and out are legal in the
degenerate case when len is 0. This fixes one of the two failures on the bots.

Change-Id: If6016dfc3963d9c06c849fc8eba9908556f66666
Reviewed-on: https://boringssl-review.googlesource.com/4721
Reviewed-by: Adam Langley <agl@google.com>
diff --git a/crypto/modes/ctr.c b/crypto/modes/ctr.c
index 306b6f7..64062b2 100644
--- a/crypto/modes/ctr.c
+++ b/crypto/modes/ctr.c
@@ -88,7 +88,8 @@
                            block128_f block) {
   unsigned int n;
 
-  assert(in && out && key && ecount_buf && num);
+  assert(key && ecount_buf && num);
+  assert(len == 0 || (in && out));
   assert(*num < 16);
   assert((16 % sizeof(size_t)) == 0);