.. _gfpecsetsubgroup: GFpECSetSubgroup ================ Sets up the parameters defining an elliptic curve points subgroup. Syntax ------ IppStatus ippsGFpECSetSubGroup(const IppsGFpElement\* pX, const IppsGFpElement\* pY, const IppsBigNumState\* pOrder, const IppsBigNumState\* pCofactor, IppsGFpECState\* pEC); Include Files ------------- ``ippcp.h`` Parameters ---------- .. list-table:: :header-rows: 0 * - pX, pY - Pointers to the ``X`` and ``Y`` coordinates of the base point of the elliptic curve. * - pOrder - Pointer to the big number context storing the order of the base point. * - pCofactor - Pointer to the big number context storing the cofactor. * - pEC - Pointer to the context of the elliptic curve. Description ----------- This function sets up an elliptic curve as the subgroup generated by the base point over the finite field. .. note:: Only the ``pEC`` parameter is required. You can omit the other parameters by setting their values to NULL or zero. Return Values ------------- .. list-table:: :header-rows: 0 * - ippStsNoErr - Indicates no error. Any other value indicates an error or warning. * - ippStsNullPtrErr - Indicates an error condition if pEC is NULL. * - ippStsContextMatchErr - Indicates an error condition in the following cases: * ``IppsGFpECState`` context parameter does not match the operation. * Any of the pointers to elliptic curve parameters is not zero and the context parameter does not match the operation. * - ippStsBadArgErr - Indicates an error condition if any of the specified IppsBigNumState contexts defines zero or a negative number. * - ippStsOutOfRangeErr - Indicates an error if the base point coordinates (pX, pY) do not belong to the finite field over which the elliptic curve is initialized. * - ippStsRangeErr - Indicates an error condition in the following cases: * The size of the base point order exceeds the maximal size of the order for the given curve. * The bit size of the cofactor exceeds the bit size of the element of the finite field over which the elliptic curve is initialized.