rmtssh.hpp 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /*##############################################################################
  2. HPCC SYSTEMS software Copyright (C) 2012 HPCC Systems.
  3. Licensed under the Apache License, Version 2.0 (the "License");
  4. you may not use this file except in compliance with the License.
  5. You may obtain a copy of the License at
  6. http://www.apache.org/licenses/LICENSE-2.0
  7. Unless required by applicable law or agreed to in writing, software
  8. distributed under the License is distributed on an "AS IS" BASIS,
  9. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  10. See the License for the specific language governing permissions and
  11. limitations under the License.
  12. ############################################################################## */
  13. #ifndef RMTSSH_HPP
  14. #define RMTSSH_HPP
  15. #ifdef RMTSSH_LOCAL
  16. #define RMTSSH_API
  17. #else
  18. #ifdef REMOTE_EXPORTS
  19. #define RMTSSH_API __declspec(dllexport)
  20. #else
  21. #define RMTSSH_API __declspec(dllimport)
  22. #endif
  23. #endif
  24. interface IFRunSSH: extends IInterface
  25. {
  26. virtual void init(int argc,char * argv[]) = 0;
  27. virtual void exec() = 0;
  28. virtual void init(
  29. const char *cmdline,
  30. const char *identfilename,
  31. const char *username,
  32. const char *passwordenc,
  33. unsigned timeout,
  34. unsigned retries) = 0;
  35. virtual void exec(
  36. const IpAddress &ip,
  37. const char *workdirname,
  38. bool _background) = 0;
  39. };
  40. extern RMTSSH_API IFRunSSH *createFRunSSH();
  41. #endif