2012-09-19 1 views
1

Le code (OS X Mountain Lion):déclaration implicite de la fonction 'SecCertificateInferLabel' est invalide dans C99

OSStatus statusNew = SecCertificateInferLabel(cert, &nameRef); 

Produit un avertissement OBJ, ci-dessous, vous avez tout comprend:

#import <SecurityInterface/SFChooseIdentityPanel.h> 
#include <Security/cssmtype.h> 
#include <Security/oidsalg.h> 
#include <Security/SecCertificate.h> 
#include <Security/SecIdentity.h> 
#include <Security/SecIdentitySearch.h> 
#include <Security/SecPolicySearch.h> 
#include <Security/SecTrust.h> 
#include <Security/SecIdentitySearch.h> 
#include <Security/cssmapi.h> 
#include <Security/cssmapple.h> 
#include <Security/cssmtype.h> 
#include <Security/Security.h> 

tout suggestions?

+0

Est-ce que l'un de ces en-têtes définit 'SecCertificateInferLabel'? –

Répondre

0

Essayez d'inclure l'en-tête SecCertificatePriv.h ainsi:

#include <Security/SecCertificatePriv.h> 

je vois qu'il comprend la déclaration de la fonction que vous souhaitez utiliser.

... 
/* 
* Private API to infer a display name for a SecCertificateRef which 
* may or may not be in a keychain. 
* This is a candidate for deprecation; use SecItemCopyDisplayNames() instead. 
*/ 
OSStatus SecCertificateInferLabel(SecCertificateRef certificate, CFStringRef *label); 
... 
+0

j'essayais de faire ceci, mais je reçois le dossier non trouvé! – user170317

Questions connexes