|
a/src/utils/execmd.h |
|
b/src/utils/execmd.h |
|
... |
|
... |
14 |
* Free Software Foundation, Inc.,
|
14 |
* Free Software Foundation, Inc.,
|
15 |
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
15 |
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
16 |
*/
|
16 |
*/
|
17 |
#ifndef _EXECMD_H_INCLUDED_
|
17 |
#ifndef _EXECMD_H_INCLUDED_
|
18 |
#define _EXECMD_H_INCLUDED_
|
18 |
#define _EXECMD_H_INCLUDED_
|
19 |
/* @(#$Id: execmd.h,v 1.11 2006-12-14 13:53:43 dockes Exp $ (C) 2004 J.F.Dockes */
|
19 |
/* @(#$Id: execmd.h,v 1.12 2007-05-21 13:30:22 dockes Exp $ (C) 2004 J.F.Dockes */
|
20 |
|
20 |
|
21 |
#include <string>
|
21 |
#include <string>
|
22 |
#include <list>
|
22 |
#include <list>
|
23 |
#include <vector>
|
23 |
#include <vector>
|
24 |
#ifndef NO_NAMESPACES
|
24 |
#ifndef NO_NAMESPACES
|
|
... |
|
... |
53 |
* empty (but not null)
|
53 |
* empty (but not null)
|
54 |
*
|
54 |
*
|
55 |
* Output from the command is normally returned in a single string, but a
|
55 |
* Output from the command is normally returned in a single string, but a
|
56 |
* callback can be set to be called whenever new data arrives, in which case
|
56 |
* callback can be set to be called whenever new data arrives, in which case
|
57 |
* it is permissible to consume the data and erase the string.
|
57 |
* it is permissible to consume the data and erase the string.
|
|
|
58 |
*
|
|
|
59 |
* Note that SIGPIPE should be ignored and SIGCLD blocked when calling doexec,
|
|
|
60 |
* else things might fail randomly. (This is not done inside the class because
|
|
|
61 |
* of concerns with multithreaded programs).
|
58 |
*
|
62 |
*
|
59 |
*/
|
63 |
*/
|
60 |
class ExecCmd {
|
64 |
class ExecCmd {
|
61 |
public:
|
65 |
public:
|
62 |
/**
|
66 |
/**
|