/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/askpass-fifo.c

  • Committer: teddy at bsnet
  • Date: 2011-03-21 19:22:27 UTC
  • Revision ID: teddy@fukt.bsnet.se-20110321192227-y74ngvvcy9eq6shi
* plugins.d/mandos-client.c (good_interface): Check if the interface
                                              name starts with "."
                                              before anything else.
                                              Bug fix: Fix memory
                                              leak.

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
/*
3
3
 * Askpass-FIFO - Read a password from a FIFO and output it
4
4
 * 
5
 
 * Copyright © 2008-2010 Teddy Hogeborn
6
 
 * Copyright © 2008-2010 Björn Påhlsson
 
5
 * Copyright © 2008-2011 Teddy Hogeborn
 
6
 * Copyright © 2008-2011 Björn Påhlsson
7
7
 * 
8
8
 * This program is free software: you can redistribute it and/or
9
9
 * modify it under the terms of the GNU General Public License as
51
51
  ret = mkfifo(passfifo, S_IRUSR | S_IWUSR);
52
52
  if(ret == -1){
53
53
    int e = errno;
54
 
    error(0, errno, "mkfifo");
55
54
    switch(e){
56
55
    case EACCES:
57
56
    case ENOTDIR:
58
57
    case ELOOP:
59
 
      return EX_OSFILE;
 
58
      error(EX_OSFILE, errno, "mkfifo");
60
59
    case ENAMETOOLONG:
61
60
    case ENOSPC:
62
61
    case EROFS:
63
62
    default:
64
 
      return EX_OSERR;
 
63
      error(EX_OSERR, errno, "mkfifo");
65
64
    case ENOENT:
66
 
      return EX_UNAVAILABLE;    /* no "/lib/cryptsetup"? */
 
65
      /* no "/lib/cryptsetup"? */
 
66
      error(EX_UNAVAILABLE, errno, "mkfifo");
67
67
    case EEXIST:
68
68
      break;                    /* not an error */
69
69
    }