06 May, 2013

1 commit


08 Oct, 2012

2 commits

  • Add a pair of utility functions to render OIDs as strings. The first takes an
    encoded OID and turns it into a "a.b.c.d" form string:

    int sprint_oid(const void *data, size_t datasize,
    char *buffer, size_t bufsize);

    The second takes an OID enum index and calls the first on the data held
    therein:

    int sprint_OID(enum OID oid, char *buffer, size_t bufsize);

    Signed-off-by: David Howells
    Signed-off-by: Rusty Russell

    David Howells
     
  • Implement a simple static OID registry that allows the mapping of an encoded
    OID to an enum value for ease of use.

    The OID registry index enum appears in the:

    linux/oid_registry.h

    header file. A script generates the registry from lines in the header file
    that look like:

    OID_foo,/*1.2.3.4*/

    The actual OID is taken to be represented by the numbers with interpolated
    dots in the comment.

    All other lines in the header are ignored.

    The registry is queries by calling:

    OID look_up_oid(const void *data, size_t datasize);

    This returns a number from the registry enum representing the OID if found or
    OID__NR if not.

    Signed-off-by: David Howells
    Signed-off-by: Rusty Russell

    David Howells