*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
#include <config.h>
#include <string.h>
#include "daemon.h"
-#include "c-ctype.h"
#include "actions.h"
#include "optgroups.h"
+#define MAX_ARGS 64
+
int
optgroup_luks_available (void)
{
if (!tempfile)
return -1;
- const char *argv[16];
+ const char *argv[MAX_ARGS];
size_t i = 0;
- argv[i++] = "cryptsetup";
- argv[i++] = "-d";
- argv[i++] = tempfile;
- if (readonly) argv[i++] = "--readonly";
- argv[i++] = "luksOpen";
- argv[i++] = device;
- argv[i++] = mapname;
- argv[i++] = NULL;
+ ADD_ARG (argv, i, "cryptsetup");
+ ADD_ARG (argv, i, "-d");
+ ADD_ARG (argv, i, tempfile);
+ if (readonly) ADD_ARG (argv, i, "--readonly");
+ ADD_ARG (argv, i, "luksOpen");
+ ADD_ARG (argv, i, device);
+ ADD_ARG (argv, i, mapname);
+ ADD_ARG (argv, i, NULL);
char *err;
int r = commandv (NULL, &err, (const char * const *) argv);
if (!tempfile)
return -1;
- const char *argv[16];
+ const char *argv[MAX_ARGS];
char keyslot_s[16];
size_t i = 0;
- argv[i++] = "cryptsetup";
- argv[i++] = "-q";
+ ADD_ARG (argv, i, "cryptsetup");
+ ADD_ARG (argv, i, "-q");
if (cipher) {
- argv[i++] = "--cipher";
- argv[i++] = cipher;
+ ADD_ARG (argv, i, "--cipher");
+ ADD_ARG (argv, i, cipher);
}
- argv[i++] = "--key-slot";
+ ADD_ARG (argv, i, "--key-slot");
snprintf (keyslot_s, sizeof keyslot_s, "%d", keyslot);
- argv[i++] = keyslot_s;
- argv[i++] = "luksFormat";
- argv[i++] = device;
- argv[i++] = tempfile;
- argv[i++] = NULL;
+ ADD_ARG (argv, i, keyslot_s);
+ ADD_ARG (argv, i, "luksFormat");
+ ADD_ARG (argv, i, device);
+ ADD_ARG (argv, i, tempfile);
+ ADD_ARG (argv, i, NULL);
char *err;
int r = commandv (NULL, &err, (const char * const *) argv);
return -1;
}
- const char *argv[16];
+ const char *argv[MAX_ARGS];
char keyslot_s[16];
size_t i = 0;
- argv[i++] = "cryptsetup";
- argv[i++] = "-q";
- argv[i++] = "-d";
- argv[i++] = keyfile;
- argv[i++] = "--key-slot";
+ ADD_ARG (argv, i, "cryptsetup");
+ ADD_ARG (argv, i, "-q");
+ ADD_ARG (argv, i, "-d");
+ ADD_ARG (argv, i, keyfile);
+ ADD_ARG (argv, i, "--key-slot");
snprintf (keyslot_s, sizeof keyslot_s, "%d", keyslot);
- argv[i++] = keyslot_s;
- argv[i++] = "luksAddKey";
- argv[i++] = device;
- argv[i++] = newkeyfile;
- argv[i++] = NULL;
+ ADD_ARG (argv, i, keyslot_s);
+ ADD_ARG (argv, i, "luksAddKey");
+ ADD_ARG (argv, i, device);
+ ADD_ARG (argv, i, newkeyfile);
+ ADD_ARG (argv, i, NULL);
char *err;
int r = commandv (NULL, &err, (const char * const *) argv);
if (!tempfile)
return -1;
- const char *argv[16];
+ const char *argv[MAX_ARGS];
char keyslot_s[16];
size_t i = 0;
- argv[i++] = "cryptsetup";
- argv[i++] = "-q";
- argv[i++] = "-d";
- argv[i++] = tempfile;
- argv[i++] = "luksKillSlot";
- argv[i++] = device;
+ ADD_ARG (argv, i, "cryptsetup");
+ ADD_ARG (argv, i, "-q");
+ ADD_ARG (argv, i, "-d");
+ ADD_ARG (argv, i, tempfile);
+ ADD_ARG (argv, i, "luksKillSlot");
+ ADD_ARG (argv, i, device);
snprintf (keyslot_s, sizeof keyslot_s, "%d", keyslot);
- argv[i++] = keyslot_s;
- argv[i++] = NULL;
+ ADD_ARG (argv, i, keyslot_s);
+ ADD_ARG (argv, i, NULL);
char *err;
int r = commandv (NULL, &err, (const char * const *) argv);