/src/pdsh/pcp_client.h

https://code.google.com/ · C++ Header · 67 lines · 24 code · 10 blank · 33 comment · 0 complexity · 55413ead4d1c14026c1a2cd8e9e978ae MD5 · raw file

  1. /*****************************************************************************\
  2. * $Id$
  3. *****************************************************************************
  4. * Copyright (C) 2001-2006 The Regents of the University of California.
  5. * Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
  6. * Written by Jim Garlick <garlick@llnl.gov>.
  7. * UCRL-CODE-2003-005.
  8. *
  9. * This file is part of Pdsh, a parallel remote shell program.
  10. * For details, see <http://www.llnl.gov/linux/pdsh/>.
  11. *
  12. * Pdsh is free software; you can redistribute it and/or modify it under
  13. * the terms of the GNU General Public License as published by the Free
  14. * Software Foundation; either version 2 of the License, or (at your option)
  15. * any later version.
  16. *
  17. * Pdsh is distributed in the hope that it will be useful, but WITHOUT ANY
  18. * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  19. * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
  20. * details.
  21. *
  22. * You should have received a copy of the GNU General Public License along
  23. * with Pdsh; if not, write to the Free Software Foundation, Inc.,
  24. * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
  25. \*****************************************************************************/
  26. #ifndef _PCP_CLIENT_H
  27. #define _PCP_CLIENT_H
  28. #if HAVE_CONFIG_H
  29. # include <config.h>
  30. #endif
  31. #include "src/pdsh/opt.h"
  32. #include "src/common/list.h"
  33. /* define the filename flag as an impossible filename */
  34. #define EXIT_SUBDIR_FILENAME "a!b@c#d$"
  35. #define EXIT_SUBDIR_FLAG "E\n"
  36. /* Store the file that should be copied and if it was a
  37. * file specified by the user or if it is a file found due to
  38. * recursively moving down a directory (-r option). This flag
  39. * is needed so the right output filename can be determined
  40. * on reverse copies.
  41. */
  42. struct pcp_filename {
  43. char *filename;
  44. int file_specified_by_user;
  45. };
  46. /* expand directories, if any, and verify access for all files */
  47. List pcp_expand_dirs (List infile_names);
  48. struct pcp_client {
  49. int infd;
  50. int outfd;
  51. bool preserve;
  52. bool pcp_client;
  53. char *host;
  54. List infiles;
  55. };
  56. int pcp_client (struct pcp_client *cli);
  57. #endif /* _PCP_CLIENT_H */