anchor.diff:       {aes_128_ctr,  [], [api_ng, api_ng_one_shot, api_ng_tls]},
        {aes_192_ctr,  [], [api_ng, api_ng_one_shot, api_ng_tls]},
        {aes_256_ctr,  [], [api_ng, api_ng_one_shot, api_ng_tls]},
  -     {aes_128_ccm,  [], [aead, aead_bad_tag]},
  -     {aes_192_ccm,  [], [aead, aead_bad_tag]},
  -     {aes_256_ccm,  [], [aead, aead_bad_tag]},
  +     {aes_128_ccm,  [], [aead, aead_ng, aead_bad_tag]},
  +     {aes_192_ccm,  [], [aead, aead_ng, aead_bad_tag]},
  +     {aes_256_ccm,  [], [aead, aead_ng, aead_bad_tag]},
        {aes_128_ecb,  [], [api_ng, api_ng_one_shot]},
        {aes_192_ecb,  [], [api_ng, api_ng_one_shot]},
        {aes_256_ecb,  [], [api_ng, api_ng_one_shot]},
  -     {aes_128_gcm,  [], [aead, aead_bad_tag]},
  -     {aes_192_gcm,  [], [aead, aead_bad_tag]},
  -     {aes_256_gcm,  [], [aead, aead_bad_tag]},
  +     {aes_128_gcm,  [], [aead, aead_ng, aead_bad_tag]},
  +     {aes_192_gcm,  [], [aead, aead_ng, aead_bad_tag]},
  +     {aes_256_gcm,  [], [aead, aead_ng, aead_bad_tag]},
   
        %% Retired aliases
        {aes_cbc,    [], [block]},
  
positive.code:               end, InTexts).
  
  %%--------------------------------------------------------------------
  spec_0_bytes(Config) ->
      Type = proplists:get_value(type, Config),
      #{iv_length := IVS, key_length := KS} = Spec = crypto:cipher_info(Type),
  
negative.code:             {error, {return, apply(Fun, Args)}}
          catch
              error:notsup ->
                  ok;
              error: {notsup, _, _} ->
                  ok;
              Class:Error ->
                  {error, {Class, Error}}
  