gatekeeper_device स्ट्रक्चर का रेफ़रंस
#include <
gatekeeper.h
>
डेटा फ़ील्ड |
|
hw_device_t | सामान्य |
int(* | enroll )(const struct gatekeeper_device *dev, uint32_t uid, const uint8_t *current_password_handle, uint32_t current_password_handle_length, const uint8_t *current_password, uint32_t current_password_length, const uint8_t *desired_password, uint32_t desired_password_length, uint8_t **enrolled_password_handle, uint32_t *enrolled_password_handle_length) |
int(* | verify )(const struct gatekeeper_device *dev, uint32_t uid, uint64_t challenge, const uint8_t *enrolled_password_handle, uint32_t enrolled_password_handle_length, const uint8_t *provided_password, uint32_t provided_password_length, uint8_t **auth_token, uint32_t *auth_token_length, bool *request_reenroll) |
int(* | delete_user )(const struct gatekeeper_device *dev, uint32_t uid) |
int(* | delete_all_users )(const struct gatekeeper_device *dev) |
पूरी जानकारी
परिभाषा, gatekeeper.h फ़ाइल की लाइन 41 पर दी गई है.
फ़ील्ड का दस्तावेज़
hw_device_t सामान्य |
गेटकीपर डिवाइस के सामान्य तरीके. ऊपर बताए गए तरीके के मुताबिक, यह keymaster_device का पहला सदस्य होना चाहिए.
परिभाषा, gatekeeper.h फ़ाइल की लाइन 46 पर दी गई है.
int(* delete_all_users)(const struct gatekeeper_device *dev) |
परिभाषा, gatekeeper.h फ़ाइल की लाइन 173 पर दी गई है.
int(* delete_user)(const struct gatekeeper_device *dev, uint32_t uid) |
परिभाषा, फ़ाइल gatekeeper.h की लाइन 159 पर दी गई है.
int(* enroll)(const struct gatekeeper_device *dev, uint32_t uid, const uint8_t *current_password_handle, uint32_t current_password_handle_length, const uint8_t *current_password, uint32_t current_password_length, const uint8_t *desired_password, uint32_t desired_password_length, uint8_t **enrolled_password_handle, uint32_t *enrolled_password_handle_length) |
desired_password को रजिस्टर करता है. यह पासवर्ड, उपयोगकर्ता के चुने गए पिन या पासवर्ड से लिया जाना चाहिए. साथ ही, पुष्टि करने के तरीके की निजी कुंजी का इस्तेमाल किया जाना चाहिए. इस कुंजी का इस्तेमाल सिर्फ़ पुष्टि करने के तरीके के डेटा को रजिस्टर करने के लिए किया जाता है.
अगर पहले से कोई पासवर्ड रजिस्टर किया गया था, तो उसे current_password_handle में दिया जाना चाहिए. साथ ही, current_password में मौजूदा पासवर्ड दिया जाना चाहिए. यह पासवर्ड, current_password_handle से मेल खाना चाहिए.
पैरामीटर:
- dev: gatekeeper_open को कॉल करके हासिल किए गए, gatekeeper_device का पॉइंटर
- uid: Android उपयोगकर्ता आइडेंटिफ़ायर
- current_password_handle: यह मौजूदा पासवर्ड हैंडल है, जिसे उपयोगकर्ता बदलना चाहता है. अगर फ़िलहाल कोई पासवर्ड रजिस्टर नहीं किया गया है, तो यह वैल्यू शून्य हो सकती है.
- current_password_handle_length: current_password_handle से दिखाए गए बफ़र की लंबाई बाइट में. अगर current_password_handle NULL है, तो यह 0 होना चाहिए.
- current_password: उपयोगकर्ता का मौजूदा पासवर्ड, सादा टेक्स्ट में. अगर यह सबमिट किया जाता है, तो इसकी पुष्टि current_password_handle से की जानी चाहिए.
- current_password_length: current_password से दिखाए गए बफ़र का साइज़, बाइट में. अगर current_password की वैल्यू NULL है, तो यह 0 होनी चाहिए.
- desired_password: वह नया पासवर्ड जिसे उपयोगकर्ता सादे टेक्स्ट में रजिस्टर करना चाहता है. यह शून्य नहीं हो सकता.
- desired_password_length: desired_password से दिखाए गए बफ़र की लंबाई, बाइट में.
- enrolled_password_handle: पासवर्ड सेट होने पर, नए पासवर्ड हैंडल के साथ एक बफ़र असाइन किया जाएगा. यह हैंडल, desired_password में दिए गए पासवर्ड से जुड़ा होगा. इस बफ़र का इस्तेमाल, रजिस्टर करने या पुष्टि करने के लिए, आने वाले कॉल पर किया जा सकता है. कॉल करने वाले व्यक्ति को delete[] कॉल की मदद से, इस बफ़र को डी-ऐलोकेट करना होगा
- enrolled_password_handle_length: इस फ़ंक्शन से एलोकेट किए गए बफ़र की लंबाई को बाइट में दिखाने वाला पॉइंटर. इस पॉइंटर को *enrolled_password_handle_length से पॉइंट किया जाता है.
लौटाए गए आइटम:
- 0 on success
- गड़बड़ी होने पर, गड़बड़ी का कोड 0 से कम होना चाहिए या
- अगर T मिलीसेकंड बीत जाने तक कॉल को फिर से आज़माना नहीं है, तो टाइम आउट की वैल्यू T > 0 होनी चाहिए.
गड़बड़ी होने पर, enrolled_password_handle को एलोकेट नहीं किया जाएगा.
gatekeeper.h फ़ाइल की लाइन 91 पर परिभाषा.
int(* verify)(const struct gatekeeper_device *dev, uint32_t uid, uint64_t challenge, const uint8_t *enrolled_password_handle, uint32_t enrolled_password_handle_length, const uint8_t *provided_password, uint32_t provided_password_length, uint8_t **auth_token, uint32_t *auth_token_length, bool *request_reenroll) |
यह पुष्टि करता है कि provided_password, enrolled_password_handle से मेल खाता है.
इस मॉड्यूल को लागू करने पर, इस कॉल का नतीजा सेव किया जा सकता है. इससे यह पता चलता है कि पुष्टि हाल ही में की गई है.
पुष्टि होने पर, पुष्टि करने वाले टोकन का पता auth_token में लिखता है. इस टोकन का इस्तेमाल, भरोसेमंद अन्य सेवाओं के पासवर्ड की पुष्टि करने के लिए किया जा सकता है. क्लाइंट इस वैल्यू के लिए NULL पास कर सकते हैं.
पैरामीटर:
- dev: gatekeeper_open को कॉल करके हासिल किए गए, gatekeeper_device का पॉइंटर
- uid: Android उपयोगकर्ता आइडेंटिफ़ायर
- challenge: पुष्टि करने के लिए चुनौती या 0. यह चुनौती देना ज़रूरी नहीं है. इसका इस्तेमाल तब किया जाता है, जब कोई अलग पुष्टि करने वाला ऐप्लिकेशन पासवर्ड की पुष्टि करने का अनुरोध करता है या लेन-देन के लिए पासवर्ड की पुष्टि करने के लिए किया जाता है.
- enrolled_password_handle: यह रजिस्टर किया गया पासवर्ड हैंडल है. उपयोगकर्ता इसकी पुष्टि करना चाहता है.
- enrolled_password_handle_length: enrolled_password_handle से दिखाए गए बफ़र की लंबाई, बाइट में
- provided_password: साफ़ तौर पर लिखा गया वह पासवर्ड जिसकी पुष्टि enrolled_password_handle से की जानी है
- provided_password_length: provided_password से दिखाए गए बफ़र की लंबाई, बाइट में
- auth_token: पुष्टि हो जाने पर, इस पुष्टि से मिलने वाले ऑथेंटिकेशन टोकन वाले बफ़र को *auth_token को असाइन किया जाता है. delete[] कॉल के ज़रिए, इस मेमोरी को डीलोक करने की ज़िम्मेदारी कॉलर की होती है
- auth_token_length: पुष्टि हो जाने पर, *auth_token को असाइन किए गए पुष्टि करने वाले टोकन की लंबाई, *auth_token_length को असाइन कर दी जाएगी
- request_reenroll: वर्शन में बदलाव होने की वजह से, पुष्टि किए गए पासवर्ड को फिर से रजिस्टर करने के लिए, ऊपरी लेयर से अनुरोध. अगर पुष्टि नहीं हो पाती है, तो यह सेट नहीं होता.
लौटाए गए आइटम:
- 0 on success
- गड़बड़ी होने पर, गड़बड़ी का कोड 0 से कम होना चाहिए या
- अगर T मिलीसेकंड बीत जाने तक कॉल को फिर से आज़माना नहीं है, तो टाइम आउट की वैल्यू T > 0 होनी चाहिए. गड़बड़ी होने पर, पुष्टि करने वाला टोकन असाइन नहीं किया जाएगा
परिभाषा, gatekeeper.h फ़ाइल की लाइन 141 पर दी गई है.
इस स्ट्रक्चर का दस्तावेज़, इस फ़ाइल से जनरेट किया गया था:
- hardware/libhardware/include/hardware/ gatekeeper.h