[26360] in CVS-changelog-for-Kerberos-V5
svn rev #25696: trunk/src/lib/krb5/asn.1/
daemon@ATHENA.MIT.EDU (ghudson@mit.edu)
Sun Feb 12 01:11:51 2012
Date: Sun, 12 Feb 2012 01:11:48 -0500
From: ghudson@mit.edu
Message-Id: <201202120611.q1C6Bmt9023185@drugstore.mit.edu>
To: cvs-krb5@mit.edu
Reply-To: krbdev@mit.edu
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: cvs-krb5-bounces@mit.edu
http://src.mit.edu/fisheye/changelog/krb5/?cs=25696
Commit By: ghudson
Log Message:
Update ASN.1 TODO file
Changed Files:
U trunk/src/lib/krb5/asn.1/TODO.asn1
Modified: trunk/src/lib/krb5/asn.1/TODO.asn1
===================================================================
--- trunk/src/lib/krb5/asn.1/TODO.asn1 2012-02-12 06:00:24 UTC (rev 25695)
+++ trunk/src/lib/krb5/asn.1/TODO.asn1 2012-02-12 06:11:48 UTC (rev 25696)
@@ -2,12 +2,6 @@
Stuff that should still be done on the ASN.1 encoder conversion:
-* Add support for opaque objects (pre-encoded fields, or ANY), and fix
- up those remaining encoders (e.g., asn1_encode_sam_challenge_2) that
- need them.
-
-* Convert PKINIT encoders, after we have test cases.
-
* Make offsetof uses conforming. Currently we may use foo.bar or
foo[0] as fields.
@@ -47,20 +41,12 @@
them use the encoders in the code. Only a subset of types would be
exported probably.
-* More compact encoding: For tags and optional-field bit positions,
- encode N+1, and use 0 for "none", then make the field unsigned.
- Currently the fields are signed, non-negative values hold useful
- data, -1 means "none", and MIN..-2 are unused. Changing this will
- either let us reduce the field size one bit, or extend the maximum
- tag/bitpos value from 2**(N-1)-1 to 2**N-2.
+* More compact encoding: For struct atype and struct cntype, we could
+ use structures with a common base type (similar to Xlib events)
+ instead of a base structure with a void pointer, to save the cost of
+ a pointer for each type. Doing this might not be strictly correct
+ C.
-* More compact encoding: Use a union with designated initializers, or
- some ugly casting, to make the structures smaller by not having all
- fields present when we never use all of them at once. The union
- approach is certainly more appealing, aside from the little detail
- that it won't work on Windows unless we do all the initialization at
- run time.
-
* Pie in the sky: A verbose mode that can tell you "missing field
KDC-REP.cname.name-string[1].data" or some such. This would require
tracking the stack of pending encodes and adding strings with type
@@ -69,7 +55,8 @@
* For ALL_POINTERS_ARE_THE_SAME mode (which is not strictly conforming
with the C standard, and thus not default currently, but makes
things a little smaller and faster), eliminate the loadptr structure
- entry.
+ entry. (Note that if this infrastructure becomes exposed to
+ plugins, ALL_POINTERS_ARE_THE_SAME changes the ABI.)
* Maybe: Reorganize the data of a "module" so everything needing
relocation is put in some tables, referenced by index from other
@@ -86,5 +73,3 @@
fetch-a-pointer function ignoring the integer argument, while at the
C level it's strictly conforming by using the correct types for
access.
-
-* Table-driven decoders?
_______________________________________________
cvs-krb5 mailing list
cvs-krb5@mit.edu
https://mailman.mit.edu/mailman/listinfo/cvs-krb5