/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to plugins.d/usplash.xml

  • Committer: Teddy Hogeborn
  • Date: 2021-03-21 20:46:40 UTC
  • Revision ID: teddy@recompile.se-20210321204640-lpsyen8jr9lw1jma
Some cleanup of GnuTLS interface

Rename opaque internal GnuTLS structures named *_int to also start
with underscore (_), as is the custom in Python programs.

Decode byte strings from UTF-8 where needed.  (Fixing, among other
things, all "DEBUG: GnuTLS" lines having a "b'" prefix in Python 3.)

Simplify calling C functions by:
1. Using the "_as_parameter_" attribute to store the ctypes object.
2. Creating and using helper classes to automatically create pointers
   or cast typed pointers to pointers to void.
3. Providing the "from_param()" method on relevant classes.

Remove "restype" attribute on C functions where "errcheck" attribute
is already set.

* mandos (gnutls.session_int): Rename to start with "_".
  (gnutls.openpgp_crt_int): - '' -
  (gnutls.Error.__init__): Decode byte string from gnutls.strerror().
  (gnutls.PointerTo): New helper class.
  (gnutls.CastToVoidPointer): - '' -
  (gnutls.With_from_param): - '' -
  (gnutls.Credentials): Inherit from "With_from_param" and store the
  ctypes object in the "_as_parameter_" attribute instead of
  "_c_object".
  (gnutls._error_code): Use "gnutls.E_SUCCESS" instead of the unadorned
  numerical constant "0".
  (gnutls._retry_on_error): - '' -
  (gnutls.priority_set_direct.argtypes): Use "ClientSession" instead
  of "session_t", and change all callers to match.
  (gnutls.init.argtypes): Use "PointerTo(ClientSession)" instead of
  "ctypes.POINTER(session_t)", and change all callers to match.
  (gnutls.set_default_priority.argtypes): Use "ClientSession" instead
  of "session_t", and change all callers to match.
  (gnutls.record_send.argtypes): - '' -
  (gnutls.certificate_allocate_credentials.argtypes): Use
  "PointerTo(Credentials)" instead of
  "ctypes.POINTER(certificate_credentials_t)", and change all callers
  to match.
  (gnutls.certificate_free_credentials.argtypes): Use "Credentials"
  instead of "certificate_credentials_t", and change all callers to
  match.
  (gnutls.handshake_set_private_extensions.argtypes): Use
  "ClientSession" instead of "session_t", and change all callers to
  match.
  (gnutls.credentials_set.argtypes): Use
  "CastToVoidPointer(Credentials)" instead of "ctypes.c_void_p", and
  change all callers to match.
  (gnutls.certificate_type_get.argtypes): Use "ClientSession" instead
  of "session_t", and change all callers to match.
  (gnutls.certificate_get_peers.argtypes): - '' -
  (gnutls.deinit.argtypes): - '' -
  (gnutls.handshake.argtypes): - '' -
  (gnutls.handshake.restype): Change from "_error_code" to
  "ctypes.c_int".
  (gnutls.transport_set_ptr.argtypes): Use "ClientSession" instead of
  "session_t", and change all callers to match.
  (gnutls.bye.argtypes): - '' -
  (gnutls.bye.restype): Change from "_error_code" to "ctypes.c_int".
  (gnutls.certificate_type_get2.argtypes): Use "ClientSession" instead
  of "session_t", and change all callers to match.
  (ClientHandler.handle): Decode "key_id" bytes to string before
  logging it in the debug log.
  (main.debug_gnutls): Decode GnuTLS log message from bytes to string
  before logging it in the debug log.

Show diffs side-by-side

added added

removed removed

Lines of Context:
135
135
        <para>
136
136
          These variables will normally be inherited from
137
137
          <citerefentry><refentrytitle>plugin-runner</refentrytitle>
138
 
          <manvolnum>8mandos</manvolnum></citerefentry>, which will
139
 
          normally have inherited them from
140
 
          <filename>/scripts/local-top/cryptroot</filename> in the
141
 
          initial <acronym>RAM</acronym> disk environment, which will
142
 
          have set them from parsing kernel arguments and
143
 
          <filename>/conf/conf.d/cryptroot</filename> (also in the
144
 
          initial RAM disk environment), which in turn will have been
145
 
          created when the initial RAM disk image was created by
146
 
          <filename
147
 
          >/usr/share/initramfs-tools/hooks/cryptroot</filename>, by
148
 
          extracting the information of the root file system from
149
 
          <filename >/etc/crypttab</filename>.
 
138
          <manvolnum>8mandos</manvolnum></citerefentry>, which might
 
139
          have in turn inherited them from its calling process.
150
140
        </para>
151
141
        <para>
152
142
          This behavior is meant to exactly mirror the behavior of
290
280
    <para>
291
281
      <citerefentry><refentrytitle>intro</refentrytitle>
292
282
      <manvolnum>8mandos</manvolnum></citerefentry>,
293
 
      <citerefentry><refentrytitle>crypttab</refentrytitle>
294
 
      <manvolnum>5</manvolnum></citerefentry>,
295
283
      <citerefentry><refentrytitle>fifo</refentrytitle>
296
284
      <manvolnum>7</manvolnum></citerefentry>,
297
285
      <citerefentry><refentrytitle>plugin-runner</refentrytitle>