Hi Klaus,

> +#define _sym2str(X)     case X: return #X;

  My only comment would be to leave the semi-colon out of the #define, and add 
it below on each line _sym2str is called.  This will make for clearer code to 
read and won't mess up an editor's auto-indent, which sometimes happens when 
there's no semi-colon to end a statement.

  Otherwise this looks good.  Once you commit I'll have some patches that will 
apply on top of these to fill out the missing SHA2 HMAC tests and AES 128/192 
tests.

Thanks,
Kent

> +
>  //
>  // p11_get_ckr - return textual interpretation of a CKR_ error code
>  // @rc is the CKR_.. error
> @@ -299,90 +301,90 @@
>  char *p11_get_ckr( CK_RV rc )
>  {
>     switch (rc) {
> -      case CKR_OK:                           return " CKR_OK";
> -      case CKR_CANCEL:                               return " CKR_CANCEL";
> -      case CKR_HOST_MEMORY:                  return " CKR_HOST_MEMORY";
> -      case CKR_SLOT_ID_INVALID:                      return " 
> CKR_SLOT_ID_INVALID";
> -      case CKR_GENERAL_ERROR:                        return " 
> CKR_GENERAL_ERROR";
> -      case CKR_FUNCTION_FAILED:                      return " 
> CKR_FUNCTION_FAILED";
> -      case CKR_ARGUMENTS_BAD:                        return " 
> CKR_ARGUMENTS_BAD";
> -      case CKR_NO_EVENT:                     return " CKR_NO_EVENT";
> -      case CKR_NEED_TO_CREATE_THREADS:               return " 
> CKR_NEED_TO_CREATE_THREADS";
> -      case CKR_CANT_LOCK:                    return " CKR_CANT_LOCK";
> -      case CKR_ATTRIBUTE_READ_ONLY:          return " 
> CKR_ATTRIBUTE_READ_ONLY";
> -      case CKR_ATTRIBUTE_SENSITIVE:          return " 
> CKR_ATTRIBUTE_SENSITIVE";
> -      case CKR_ATTRIBUTE_TYPE_INVALID:               return " 
> CKR_ATTRIBUTE_TYPE_INVALID";
> -      case CKR_ATTRIBUTE_VALUE_INVALID:              return " 
> CKR_ATTRIBUTE_VALUE_INVALID";
> -      case CKR_DATA_INVALID:                 return " CKR_DATA_INVALID";
> -      case CKR_DATA_LEN_RANGE:                       return " 
> CKR_DATA_LEN_RANGE";
> -      case CKR_DEVICE_ERROR:                 return " CKR_DEVICE_ERROR";
> -      case CKR_DEVICE_MEMORY:                        return " 
> CKR_DEVICE_MEMORY";
> -      case CKR_DEVICE_REMOVED:                       return " 
> CKR_DEVICE_REMOVED";
> -      case CKR_ENCRYPTED_DATA_INVALID:               return " 
> CKR_ENCRYPTED_DATA_INVALID";
> -      case CKR_ENCRYPTED_DATA_LEN_RANGE:     return " 
> CKR_ENCRYPTED_DATA_LEN_RANGE";
> -      case CKR_FUNCTION_CANCELED:            return " CKR_FUNCTION_CANCELED";
> -      case CKR_FUNCTION_NOT_PARALLEL:                return " 
> CKR_FUNCTION_NOT_PARALLEL";
> -      case CKR_FUNCTION_NOT_SUPPORTED:               return " 
> CKR_FUNCTION_NOT_SUPPORTED";
> -      case CKR_KEY_HANDLE_INVALID:           return " 
> CKR_KEY_HANDLE_INVALID";
> -      case CKR_KEY_SIZE_RANGE:                       return " 
> CKR_KEY_SIZE_RANGE";
> -      case CKR_KEY_TYPE_INCONSISTENT:                return " 
> CKR_KEY_TYPE_INCONSISTENT";
> -      case CKR_KEY_NOT_NEEDED:                       return " 
> CKR_KEY_NOT_NEEDED";
> -      case CKR_KEY_CHANGED:                  return " CKR_KEY_CHANGED";
> -      case CKR_KEY_NEEDED:                   return " CKR_KEY_NEEDED";
> -      case CKR_KEY_INDIGESTIBLE:             return " CKR_KEY_INDIGESTIBLE";
> -      case CKR_KEY_FUNCTION_NOT_PERMITTED:   return " 
> CKR_KEY_FUNCTION_NOT_PERMITTED";
> -      case CKR_KEY_NOT_WRAPPABLE:            return " CKR_KEY_NOT_WRAPPABLE";
> -      case CKR_KEY_UNEXTRACTABLE:            return " CKR_KEY_UNEXTRACTABLE";
> -      case CKR_MECHANISM_INVALID:            return " CKR_MECHANISM_INVALID";
> -      case CKR_MECHANISM_PARAM_INVALID:              return " 
> CKR_MECHANISM_PARAM_INVALID";
> -      case CKR_OBJECT_HANDLE_INVALID:                return " 
> CKR_OBJECT_HANDLE_INVALID";
> -      case CKR_OPERATION_ACTIVE:             return " CKR_OPERATION_ACTIVE";
> -      case CKR_OPERATION_NOT_INITIALIZED:    return " 
> CKR_OPERATION_NOT_INITIALIZED";
> -      case CKR_PIN_INCORRECT:                        return " 
> CKR_PIN_INCORRECT";
> -      case CKR_PIN_INVALID:                  return " CKR_PIN_INVALID";
> -      case CKR_PIN_LEN_RANGE:                        return " 
> CKR_PIN_LEN_RANGE";
> -      case CKR_PIN_EXPIRED:                  return " CKR_PIN_EXPIRED";
> -      case CKR_PIN_LOCKED:                   return " CKR_PIN_LOCKED";
> -      case CKR_SESSION_CLOSED:                       return " 
> CKR_SESSION_CLOSED";
> -      case CKR_SESSION_COUNT:                        return " 
> CKR_SESSION_COUNT";
> -      case CKR_SESSION_HANDLE_INVALID:               return " 
> CKR_SESSION_HANDLE_INVALID";
> -      case CKR_SESSION_PARALLEL_NOT_SUPPORTED:       return " 
> CKR_SESSION_PARALLEL_NOT_SUPPORTED";
> -      case CKR_SESSION_READ_ONLY:            return " CKR_SESSION_READ_ONLY";
> -      case CKR_SESSION_EXISTS:                       return " 
> CKR_SESSION_EXISTS";
> -      case CKR_SESSION_READ_ONLY_EXISTS:     return " 
> CKR_SESSION_READ_ONLY_EXISTS";
> -      case CKR_SESSION_READ_WRITE_SO_EXISTS: return " 
> CKR_SESSION_READ_WRITE_SO_EXISTS";
> -      case CKR_SIGNATURE_INVALID:            return " CKR_SIGNATURE_INVALID";
> -      case CKR_SIGNATURE_LEN_RANGE:          return " 
> CKR_SIGNATURE_LEN_RANGE";
> -      case CKR_TEMPLATE_INCOMPLETE:          return " 
> CKR_TEMPLATE_INCOMPLETE";
> -      case CKR_TEMPLATE_INCONSISTENT:                return " 
> CKR_TEMPLATE_INCONSISTENT";
> -      case CKR_TOKEN_NOT_PRESENT:            return " CKR_TOKEN_NOT_PRESENT";
> -      case CKR_TOKEN_NOT_RECOGNIZED:         return " 
> CKR_TOKEN_NOT_RECOGNIZED";
> -      case CKR_TOKEN_WRITE_PROTECTED:                return " 
> CKR_TOKEN_WRITE_PROTECTED";
> -      case CKR_UNWRAPPING_KEY_HANDLE_INVALID:        return " 
> CKR_UNWRAPPING_KEY_HANDLE_INVALID";
> -      case CKR_UNWRAPPING_KEY_SIZE_RANGE:    return " 
> CKR_UNWRAPPING_KEY_SIZE_RANGE";
> -      case CKR_UNWRAPPING_KEY_TYPE_INCONSISTENT:return " 
> CKR_UNWRAPPING_KEY_TYPE_INCONSISTENT";
> -      case CKR_USER_ALREADY_LOGGED_IN:               return " 
> CKR_USER_ALREADY_LOGGED_IN";
> -      case CKR_USER_NOT_LOGGED_IN:           return " 
> CKR_USER_NOT_LOGGED_IN";
> -      case CKR_USER_PIN_NOT_INITIALIZED:     return " 
> CKR_USER_PIN_NOT_INITIALIZED";
> -      case CKR_USER_TYPE_INVALID:            return " CKR_USER_TYPE_INVALID";
> -      case CKR_USER_ANOTHER_ALREADY_LOGGED_IN:       return " 
> CKR_USER_ANOTHER_ALREADY_LOGGED_IN";
> -      case CKR_USER_TOO_MANY_TYPES:          return " 
> CKR_USER_TOO_MANY_TYPES";
> -      case CKR_WRAPPED_KEY_INVALID:          return " 
> CKR_WRAPPED_KEY_INVALID";
> -      case CKR_WRAPPED_KEY_LEN_RANGE:                return " 
> CKR_WRAPPED_KEY_LEN_RANGE";
> -      case CKR_WRAPPING_KEY_HANDLE_INVALID:  return " 
> CKR_WRAPPING_KEY_HANDLE_INVALID";
> -      case CKR_WRAPPING_KEY_SIZE_RANGE:              return " 
> CKR_WRAPPING_KEY_SIZE_RANGE";
> -      case CKR_WRAPPING_KEY_TYPE_INCONSISTENT:       return " 
> CKR_WRAPPING_KEY_TYPE_INCONSISTENT";
> -      case CKR_RANDOM_SEED_NOT_SUPPORTED:    return " 
> CKR_RANDOM_SEED_NOT_SUPPORTED";
> -      case CKR_RANDOM_NO_RNG:                        return " 
> CKR_RANDOM_NO_RNG";
> -      case CKR_BUFFER_TOO_SMALL:             return " CKR_BUFFER_TOO_SMALL";
> -      case CKR_SAVED_STATE_INVALID:          return " 
> CKR_SAVED_STATE_INVALID";
> -      case CKR_INFORMATION_SENSITIVE:                return " 
> CKR_INFORMATION_SENSITIVE";
> -      case CKR_STATE_UNSAVEABLE:             return " CKR_STATE_UNSAVEABLE";
> -      case CKR_CRYPTOKI_NOT_INITIALIZED:     return " 
> CKR_CRYPTOKI_NOT_INITIALIZED";
> -      case CKR_CRYPTOKI_ALREADY_INITIALIZED: return " 
> CKR_CRYPTOKI_ALREADY_INITIALIZED";
> -      case CKR_MUTEX_BAD:                    return " CKR_MUTEX_BAD";
> -      case CKR_MUTEX_NOT_LOCKED:             return " CKR_MUTEX_NOT_LOCKED";
> -      default:                                       return " UNKNOWN";
> +      _sym2str(CKR_OK)
> +      _sym2str(CKR_CANCEL)
> +      _sym2str(CKR_HOST_MEMORY)
> +      _sym2str(CKR_SLOT_ID_INVALID)
> +      _sym2str(CKR_GENERAL_ERROR)
> +      _sym2str(CKR_FUNCTION_FAILED)
> +      _sym2str(CKR_ARGUMENTS_BAD)
> +      _sym2str(CKR_NO_EVENT)
> +      _sym2str(CKR_NEED_TO_CREATE_THREADS)
> +      _sym2str(CKR_CANT_LOCK)
> +      _sym2str(CKR_ATTRIBUTE_READ_ONLY)
> +      _sym2str(CKR_ATTRIBUTE_SENSITIVE)
> +      _sym2str(CKR_ATTRIBUTE_TYPE_INVALID)
> +      _sym2str(CKR_ATTRIBUTE_VALUE_INVALID)
> +      _sym2str(CKR_DATA_INVALID)
> +      _sym2str(CKR_DATA_LEN_RANGE)
> +      _sym2str(CKR_DEVICE_ERROR)
> +      _sym2str(CKR_DEVICE_MEMORY)
> +      _sym2str(CKR_DEVICE_REMOVED)
> +      _sym2str(CKR_ENCRYPTED_DATA_INVALID)
> +      _sym2str(CKR_ENCRYPTED_DATA_LEN_RANGE)
> +      _sym2str(CKR_FUNCTION_CANCELED)
> +      _sym2str(CKR_FUNCTION_NOT_PARALLEL)
> +      _sym2str(CKR_FUNCTION_NOT_SUPPORTED)
> +      _sym2str(CKR_KEY_HANDLE_INVALID)
> +      _sym2str(CKR_KEY_SIZE_RANGE)
> +      _sym2str(CKR_KEY_TYPE_INCONSISTENT)
> +      _sym2str(CKR_KEY_NOT_NEEDED)
> +      _sym2str(CKR_KEY_CHANGED)
> +      _sym2str(CKR_KEY_NEEDED)
> +      _sym2str(CKR_KEY_INDIGESTIBLE)
> +      _sym2str(CKR_KEY_FUNCTION_NOT_PERMITTED)
> +      _sym2str(CKR_KEY_NOT_WRAPPABLE)
> +      _sym2str(CKR_KEY_UNEXTRACTABLE)
> +      _sym2str(CKR_MECHANISM_INVALID)
> +      _sym2str(CKR_MECHANISM_PARAM_INVALID)
> +      _sym2str(CKR_OBJECT_HANDLE_INVALID)
> +      _sym2str(CKR_OPERATION_ACTIVE)
> +      _sym2str(CKR_OPERATION_NOT_INITIALIZED)
> +      _sym2str(CKR_PIN_INCORRECT)
> +      _sym2str(CKR_PIN_INVALID)
> +      _sym2str(CKR_PIN_LEN_RANGE)
> +      _sym2str(CKR_PIN_EXPIRED)
> +      _sym2str(CKR_PIN_LOCKED)
> +      _sym2str(CKR_SESSION_CLOSED)
> +      _sym2str(CKR_SESSION_COUNT)
> +      _sym2str(CKR_SESSION_HANDLE_INVALID)
> +      _sym2str(CKR_SESSION_PARALLEL_NOT_SUPPORTED)
> +      _sym2str(CKR_SESSION_READ_ONLY)
> +      _sym2str(CKR_SESSION_EXISTS)
> +      _sym2str(CKR_SESSION_READ_ONLY_EXISTS)
> +      _sym2str(CKR_SESSION_READ_WRITE_SO_EXISTS)
> +      _sym2str(CKR_SIGNATURE_INVALID)
> +      _sym2str(CKR_SIGNATURE_LEN_RANGE)
> +      _sym2str(CKR_TEMPLATE_INCOMPLETE)
> +      _sym2str(CKR_TEMPLATE_INCONSISTENT)
> +      _sym2str(CKR_TOKEN_NOT_PRESENT)
> +      _sym2str(CKR_TOKEN_NOT_RECOGNIZED)
> +      _sym2str(CKR_TOKEN_WRITE_PROTECTED)
> +      _sym2str(CKR_UNWRAPPING_KEY_HANDLE_INVALID)
> +      _sym2str(CKR_UNWRAPPING_KEY_SIZE_RANGE)
> +      _sym2str(CKR_UNWRAPPING_KEY_TYPE_INCONSISTENT)
> +      _sym2str(CKR_USER_ALREADY_LOGGED_IN)
> +      _sym2str(CKR_USER_NOT_LOGGED_IN)
> +      _sym2str(CKR_USER_PIN_NOT_INITIALIZED)
> +      _sym2str(CKR_USER_TYPE_INVALID)
> +      _sym2str(CKR_USER_ANOTHER_ALREADY_LOGGED_IN)
> +      _sym2str(CKR_USER_TOO_MANY_TYPES)
> +      _sym2str(CKR_WRAPPED_KEY_INVALID)
> +      _sym2str(CKR_WRAPPED_KEY_LEN_RANGE)
> +      _sym2str(CKR_WRAPPING_KEY_HANDLE_INVALID)
> +      _sym2str(CKR_WRAPPING_KEY_SIZE_RANGE)
> +      _sym2str(CKR_WRAPPING_KEY_TYPE_INCONSISTENT)
> +      _sym2str(CKR_RANDOM_SEED_NOT_SUPPORTED)
> +      _sym2str(CKR_RANDOM_NO_RNG)
> +      _sym2str(CKR_BUFFER_TOO_SMALL)
> +      _sym2str(CKR_SAVED_STATE_INVALID)
> +      _sym2str(CKR_INFORMATION_SENSITIVE)
> +      _sym2str(CKR_STATE_UNSAVEABLE)
> +      _sym2str(CKR_CRYPTOKI_NOT_INITIALIZED)
> +      _sym2str(CKR_CRYPTOKI_ALREADY_INITIALIZED)
> +      _sym2str(CKR_MUTEX_BAD)
> +      _sym2str(CKR_MUTEX_NOT_LOCKED)
> +      default:                                       return "UNKNOWN";
>     }
>  }
> 



------------------------------------------------------------------------------
This SF.net email is sponsored by 

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
Opencryptoki-tech mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opencryptoki-tech

Reply via email to