All of lore.kernel.org
 help / color / mirror / Atom feed
* [dm-crypt] Question about "An example of using LUKS device through libcryptsetup API"
@ 2015-09-26  1:03 H McCurdy
  2015-09-26  6:11 ` Milan Broz
  0 siblings, 1 reply; 3+ messages in thread
From: H McCurdy @ 2015-09-26  1:03 UTC (permalink / raw)
  To: dm-crypt@saout.de

[-- Attachment #1: Type: text/plain, Size: 1463 bytes --]

Hi,
The program code is published athttps://gitlab.com/cryptsetup/cryptsetup/wikis/API/index.html
Looking in 

static int handle_active_device(const char *device_name)

at
        if (crypt_status(cd, device_name) == CRYPT_ACTIVE)
                printf("Device %s is still active.\n", device_name);
        else {
                printf("Something failed perhaps, device %s is not active.\n", device_name);
                crypt_free(cd);
                return -1;
        }

        /*
         * crypt_deactivate() is used to deactivate device
         */
        r = crypt_deactivate(cd, device_name);
        if (r < 0) {
                printf("crypt_deactivate() failed.\n");
                crypt_free(cd);
                return r;
        }

But if I look in /usr/include/libcryptsetup.h, I see

typedef enum {
  CRYPT_INVALID, /**< device mapping is invalid in this context */
  CRYPT_INACTIVE, /**< no such mapped device */
  CRYPT_ACTIVE, /**< device is active */
  CRYPT_BUSY /**< device is active and has open count > 0 */
} crypt_status_info;

and

crypt_status_info crypt_status(struct crypt_device *cd, const char *name);

It appears to me that the code flow is good since we probably can't deactivate a busy container
but it appears to me that the error is misleading in the event of CRYPT_BUSY because the message
indicates the device isn't active.

Am I interpreting correctly?

Hugh



[-- Attachment #2: Type: text/html, Size: 3548 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-09-26 19:13 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-26  1:03 [dm-crypt] Question about "An example of using LUKS device through libcryptsetup API" H McCurdy
2015-09-26  6:11 ` Milan Broz
2015-09-26 19:13   ` H McCurdy

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.