]> git.saurik.com Git - apple/xnu.git/blobdiff - EXTERNAL_HEADERS/corecrypto/ccrng_system.h
xnu-4570.1.46.tar.gz
[apple/xnu.git] / EXTERNAL_HEADERS / corecrypto / ccrng_system.h
index 3ecc428f70853eb72a25a3eb37f3545a77769f08..a5aab7ed2ca269be4ca32c9b1b075b4435856874 100644 (file)
@@ -2,8 +2,9 @@
  *  ccrng_system.h
  *  corecrypto
  *
- *  Created by Fabrice Gautier on 12/13/10.
- *  Copyright 2010 Apple, Inc. All rights reserved.
+ *  Created on 12/13/2010
+ *
+ *  Copyright (c) 2010,2013,2014,2015 Apple Inc. All rights reserved.
  *
  */
 
@@ -17,8 +18,25 @@ struct ccrng_system_state {
     int fd;
 };
 
+/*!
+ @function   ccrng_system_init - DEPRECATED
+ @abstract   Default ccrng.
+    Please transition to ccrng() which is easier to use and with provide the fastest, most secure option
+
+ @param  rng   Structure containing the state of the RNG, must remain allocated as
+ long as the rng is used.
+ @result 0 iff successful
+
+ @discussion
+        This RNG require call to "init" AND "done", otherwise it may leak a file descriptor.
+ */
+
+// Initialize ccrng
+// Deprecated, if you need a rng, just call the function ccrng()
 int ccrng_system_init(struct ccrng_system_state *rng);
 
+// Close the system RNG
+// Mandatory step to avoid leaking file descriptor
 void ccrng_system_done(struct ccrng_system_state *rng);
 
 #endif /* _CORECRYPTO_CCRNG_SYSTEM_H_ */