| 1244
 | 
 | 
 | 
Teddy Hogeborn | 
3 years ago
 | 
  | 
 
 | 
| 1243
 | 
 | 
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. 
 
 
 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1242
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1241
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1240
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1239
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1238
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1237
 | 
 | 
mandos-ctl: Fix bad test for command.Remove and related minor issues
  The test for command.Remove removes all clients from the spy server, and then loops over all clients, looking for the corresponding Remove command as recorded by the spy server.  But since since there aren't any clients left after they were removed, no assertions are made, and the test therefore does nothing.  Fix this.
  In tests for command.Approve and command.Deny, add checks that clients were not somehow removed by the command (in which case, likewise, no assertions are made).
  Add related checks to TestPropertySetterCmd.runTest; i.e. test that a sequence is not empty before looping over it and making assertions.
  * mandos-ctl (TestBaseCommands.test_Remove): Save a copy of the   original "clients" dict, and loop over those instead.  Add assertion   that all clients were indeed removed.  Also fix the code which looks   for the Remove command, which now needs to actually work.   (TestBaseCommands.test_Approve, TestBaseCommands.test_Deny): Add   assertion that there are still clients before looping over them.   (TestPropertySetterCmd.runTest): Add assertion that the list of   values to get is not empty before looping over them.  Also add check   that there are still clients before looping over clients. 
 
 
 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1236
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1235
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1234
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1233
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1232
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1231
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1230
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1229
 | 
 | 
 | 
teddy at recompile | 
4 years ago
 | 
  | 
 
 | 
| 1228
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 | 
| 1227
 | 
 | 
 | 
teddy at recompile | 
4 years ago
 | 
  | 
 
 | 
| 1226
 | 
 | 
 | 
teddy at recompile | 
4 years ago
 | 
  | 
 
 | 
| 1225
 | 
 | 
 | 
Teddy Hogeborn | 
4 years ago
 | 
  | 
 
 |