/mandos/release

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

« back to all changes in this revision

Viewing changes to plugins.d/askpass-fifo.c

  • Committer: Teddy Hogeborn
  • Date: 2018-08-19 01:35:11 UTC
  • mto: (237.7.594 trunk)
  • mto: This revision was merged to the branch mainline in revision 368.
  • Revision ID: teddy@recompile.se-20180819013511-cku25q9yeub3dnr0
Adapt to changes in cryptsetup; use "cryptroot-unlock" program

* Makefile (install-client-nokey): Also install new script files
  "mandos-to-cryptroot-unlock" and "initramfs-tools-script-stop".
* debian/mandos-client.dirs: Add
  "usr/share/initramfs-tools/scripts/local-premount".
* initramfs-tools-hook: Also copy "mandos-to-cryptroot-unlock".
* initramfs-tools-script: Only modify keyscript setting in cryptroot
  file if the file exists, otherwise start
  "mandos-to-cryptroot-unlock" in background.
* initramfs-tools-script-stop: New script to make sure plugin-runner
  has stopped before continuing.
* mandos-to-cryptroot-unlock: New script to run plugin-runner and feed
  any password it gets into the "cryptroot-unlock" program.

Show diffs side-by-side

added added

removed removed

Lines of Context:
65
65
    fprintf(stderr, ": ");
66
66
    fprintf(stderr, "%s\n", strerror(errnum));
67
67
    error(status, errno, "vasprintf while printing error");
68
 
    if(status){
69
 
      __builtin_unreachable();
70
 
    }
71
68
    return;
72
69
  }
73
70
  fprintf(stderr, "Mandos plugin ");
74
71
  error(status, errnum, "%s", text);
75
 
  if(status){
76
 
    __builtin_unreachable();
77
 
  }
78
72
  free(text);
79
73
}
80
74
 
96
90
    case ENOTDIR:
97
91
    case ELOOP:
98
92
      error_plus(EX_OSFILE, errno, "mkfifo");
99
 
      __builtin_unreachable();
100
93
    case ENAMETOOLONG:
101
94
    case ENOSPC:
102
95
    case EROFS:
103
96
    default:
104
97
      error_plus(EX_OSERR, errno, "mkfifo");
105
 
      __builtin_unreachable();
106
98
    case ENOENT:
107
99
      /* no "/lib/cryptsetup"? */
108
100
      error_plus(EX_UNAVAILABLE, errno, "mkfifo");
109
 
      __builtin_unreachable();
110
101
    case EEXIST:
111
102
      break;                    /* not an error */
112
103
    }