def _encode_sk_name_entry(backend, attributes):
 stack = backend._lib.sk_X509_NAME_ENTRY_new_null()
 for attribute in attributes:
  name_entry = _encode_name_entry(backend, attribute)
  res = backend._lib.sk_X509_NAME_ENTRY_push(stack, name_entry)
  backend.openssl_assert((res == 1))
 return stack

def _encode_sk_name_entry ( backend , attributes ) : stack = backend . _lib . sk_X509_NAME_ENTRY_new_null ( ) for attribute in attributes : name_entry = _encode_name_entry ( backend , attribute ) res = backend . _lib . sk_X509_NAME_ENTRY_push ( stack , name_entry ) backend . openssl_assert ( ( res == 1 ) ) return stack
the sk_x50_name_entry created will not be gcd .