Je le code suivant. ':cpp: l'expression primaire attendue avant jeton
class SSLHashSHA1
{
SSLHashSHA1();
~SSLHashSHA1();
public:
static OSStatus update(string*, int*);
static OSStatus final (string*, string*);
};
OSStatus SSLHashSHA1::update(string* ctx, int* ran){
return 0;
}
OSStatus SSLHashSHA1::final(string* ctx, string* out){
return 0;
}
static OSStatus SSLVerifySignedServerKeyExchange(
SSLContext *ctx, bool isRsa, SSLBuffer signedParams, uint8_t *signature, uint16_t signatureLen)
{
OSStatus err;
if ((err = SSLHashSHA1.update(&hashCtx, &serverRandom)) != 0)
goto fail;
if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
goto fail;
goto fail;
if ((err = SSLHashSHA1.final(&hashCtx, &hashOut)) != 0)
goto fail;
fail:
SSLFreeBuffer(&signedHashes);
SSLFreeBuffer(&hashCtx);
return err;
}
Et je reçois l'erreur mentionnée dans la rubrique. Je comprends cela pour les appels SSLHashSHA1.update et SSLHashSHA1.final. Pourquoi je reçois ça?
Je pensais que lorsque je rends statique des fonctions de classe, je peux les utiliser sans avoir à créer un objet. Ou devrais-je changer la classe en une structure ou quelque chose comme ça?
Ecrire 'SSLHashSHA1 :: mise à jour (et hashCtx, et ServerRandom)' pour appeler des fonctions membres statiques. –