RT2964: Fix it via doc
authorRich Salz <rsalz@openssl.org>
Sat, 25 Jun 2016 18:51:53 +0000 (14:51 -0400)
committerRich Salz <rsalz@openssl.org>
Sat, 25 Jun 2016 20:40:51 +0000 (16:40 -0400)
OBJ_nid2obj() and friends should be treated as const.

Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
(cherry picked from commit 82f31fe4dd0dac30229fa8684229b49d2bcef404)

doc/crypto/OBJ_nid2obj.pod

index 1e45dd40f6bb830e88c1d361c03bc5f258f5efa7..7388f2002bd538772424bd8a2b2cafd02f0db8de 100644 (file)
@@ -33,6 +33,12 @@ functions
 
 The ASN1 object utility functions process ASN1_OBJECT structures which are
 a representation of the ASN1 OBJECT IDENTIFIER (OID) type.
+For convenience, OID's are usually represented in source code as numeric
+identifiers, or B<NID>'s.  OpenSSL has an internal table of OID's that
+are generated when the library is built, and their corresponding NID's
+are available as define'd constants.  For the functions below, application
+code should treat all returned values -- OID's, NID's, or names -- as
+constants.
 
 OBJ_nid2obj(), OBJ_nid2ln() and OBJ_nid2sn() convert the NID B<n> to 
 an ASN1_OBJECT structure, its long name and its short name respectively,
@@ -112,6 +118,7 @@ Create a new NID and initialize an object from it:
 
  int new_nid;
  ASN1_OBJECT *obj;
+
  new_nid = OBJ_create("1.2.3.4", "NewOID", "New Object Identifier");
 
  obj = OBJ_nid2obj(new_nid);
@@ -129,6 +136,9 @@ Instead B<buf> must point to a valid buffer and B<buf_len> should
 be set to a positive value. A buffer length of 80 should be more
 than enough to handle any OID encountered in practice.
 
+Many of the functions here should probably be changed to return B<const>
+pointers. But the lack of consistency makes that too awkward to do.
+
 =head1 RETURN VALUES
 
 OBJ_nid2obj() returns an B<ASN1_OBJECT> structure or B<NULL> is an