⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 smpd.h

📁 fortran并行计算包
💻 H
📖 第 1 页 / 共 3 页
字号:
    int  bNoTTY;    SMPD_BOOL bPasswordProtect;    char SMPDPassword[100];    char passphrase[SMPD_PASSPHRASE_MAX_LENGTH];    SMPD_BOOL logon;    char UserAccount[SMPD_MAX_ACCOUNT_LENGTH];    char UserPassword[SMPD_MAX_PASSWORD_LENGTH];    int  cur_tag;    int  dbg_state;    char dbg_filename[SMPD_MAX_FILENAME];    long dbg_file_size;    int  have_dbs;    char kvs_name[SMPD_MAX_DBS_NAME_LEN];    char domain_name[SMPD_MAX_DBS_NAME_LEN];#ifdef HAVE_WINDOWS_H    HANDLE hCloseStdinThreadEvent;    HANDLE hStdinThread;#endif#ifdef USE_PTHREAD_STDIN_REDIRECTION    pthread_t stdin_thread;    int stdin_read, stdin_write;#endif    int do_console;    int port;    SMPD_BOOL is_singleton_client;    /* Port to connect back to a singleton process */    int singleton_client_port;    char console_host[SMPD_MAX_HOST_LENGTH];    smpd_host_node_t *host_list;    smpd_launch_node_t *launch_list;    int credentials_prompt;    int do_multi_color_output;    int no_mpi;    int output_exit_codes;    int local_root;    int use_iproot;    int use_process_session;    int nproc, nproc_launched, nproc_exited;    SMPD_BOOL verbose;    /*SMPD_BOOL shutdown, restart, validate, do_status;*/ /* built in commands */    smpd_builtin_commands_t builtin_cmd;#ifdef HAVE_WINDOWS_H    BOOL bOutputInitialized;    HANDLE hOutputMutex;    HANDLE hLaunchProcessMutex;#endif#ifdef USE_WIN_MUTEX_PROTECT    HANDLE hDBSMutex;#endif    smpd_database_node_t *pDatabase;    smpd_database_node_t *pDatabaseIter;    int nInitDBSRefCount;    smpd_barrier_node_t *barrier_list;#ifdef HAVE_WINDOWS_H    SERVICE_STATUS ssStatus;    SERVICE_STATUS_HANDLE sshStatusHandle;    HANDLE hBombDiffuseEvent;    HANDLE hBombThread;#endif    SMPD_BOOL service_stop;    SMPD_BOOL noprompt;    char smpd_filename[SMPD_MAX_FILENAME];    SMPD_BOOL stdin_toall, stdin_redirecting;    smpd_host_node_t *default_host_list, *cur_default_host;    int cur_default_iproc;#ifdef HAVE_WINDOWS_H    HANDLE hSMPDDataMutex;#endif    char printf_buffer[SMPD_MAX_DBG_PRINTF_LENGTH];    int state_machine_ret_val;    SMPD_BOOL exit_on_done;    int tree_parent;    int tree_id;    smpd_host_node_t *s_host_list, *s_cur_host;    int s_cur_count;    SMPD_BOOL use_inherited_handles;    smpd_process_group_t *pg_list;    SMPD_BOOL use_abort_exit_code;    int abort_exit_code;    SMPD_BOOL verbose_abort_output;    int mpiexec_exit_code;    SMPD_BOOL map0to1;    SMPD_BOOL rsh_mpiexec;    SMPD_BOOL mpiexec_inorder_launch;    SMPD_BOOL mpiexec_run_local;#ifdef HAVE_WINDOWS_H    HANDLE timeout_thread;#else#ifdef HAVE_PTHREADS_H    pthread_t timeout_thread;#endif#endif    int timeout;    MPIDU_Sock_t timeout_sock;    MPIDU_Sock_t mpiexec_abort_sock;    SMPD_BOOL use_pmi_server;    char *mpiexec_argv0;    char encrypt_prefix[SMPD_MAX_PASSWORD_LENGTH];    SMPD_BOOL plaintext;    SMPD_BOOL use_sspi, use_delegation, use_sspi_job_key;#ifdef HAVE_WINDOWS_H    PSecurityFunctionTable sec_fn;#endif    smpd_sspi_client_context_t *sspi_context_list;    char job_key[SMPD_SSPI_JOB_KEY_LENGTH];    char job_key_account[SMPD_MAX_ACCOUNT_LENGTH];    char job_key_password[SMPD_MAX_PASSWORD_LENGTH];    char key[SMPD_MAX_NAME_LENGTH];    char val[SMPD_MAX_VALUE_LENGTH];    SMPD_BOOL do_console_returns;    char env_channel[10];    char env_dll[SMPD_MAX_FILENAME];    char env_wrap_dll[SMPD_MAX_FILENAME];    smpd_delayed_spawn_node_t *delayed_spawn_queue;    SMPD_BOOL spawning;    int user_index;    SMPD_BOOL prefix_output;} smpd_global_t;extern smpd_global_t smpd_process;/* function prototypes */#if defined(__cplusplus)extern "C" {#endifint smpd_parse_command_args(int *argcp, char **argvp[]);#ifdef HAVE_WINDOWS_Hchar *smpd_encode_handle(char *str, HANDLE h);HANDLE smpd_decode_handle(char *str);#endifvoid smpd_print_options(void);int smpd_entry_point(void);int smpd_enter_at_state(MPIDU_Sock_set_t set, smpd_state_t state);int smpd_wait_process(smpd_pwait_t wait, int *exit_code_ptr);int smpd_init_process(void);int smpd_init_printf(void);int smpd_finalize_printf(void);int smpd_init_context(smpd_context_t *context, smpd_context_type_t type, MPIDU_Sock_set_t set, MPIDU_Sock_t sock, int id);int smpd_init_command(smpd_command_t *cmd);int smpd_create_context(smpd_context_type_t type, MPIDU_Sock_set_t set, MPIDU_Sock_t sock, int id, smpd_context_t **context_pptr);int smpd_create_command(char *cmd_str, int src, int dest, int want_reply, smpd_command_t **cmd_pptr);int smpd_create_command_copy(smpd_command_t *src_ptr, smpd_command_t **cmd_pptr);int smpd_free_command(smpd_command_t *cmd_ptr);int smpd_free_context(smpd_context_t *context);int smpd_add_command_arg(smpd_command_t *cmd_ptr, char *param, char *value);int smpd_add_command_int_arg(smpd_command_t *cmd_ptr, char *param, int value);int smpd_add_command_binary_arg(smpd_command_t *cmd_ptr, char *param, void *buffer, int length);int smpd_parse_command(smpd_command_t *cmd_ptr);int smpd_post_read_command(smpd_context_t *context);int smpd_post_write_command(smpd_context_t *context, smpd_command_t *cmd);int smpd_package_command(smpd_command_t *cmd);int smpd_read_string(MPIDU_Sock_t sock, char *str, int maxlen);int smpd_write_string(MPIDU_Sock_t sock, char *str);int smpd_read(MPIDU_Sock_t sock, void *buf, MPIDU_Sock_size_t len);int smpd_write(MPIDU_Sock_t sock, void *buf, MPIDU_Sock_size_t len);int smpd_dbg_printf(char *str, ...);int smpd_err_printf(char *str, ...);int smpd_enter_fn(char *fcname);int smpd_exit_fn(char *fcname);SMPD_BOOL smpd_option_on(const char *option);int smpd_get_user_data(const char *key, char *value, int value_len);int smpd_get_smpd_data(const char *key, char *value, int value_len);int smpd_get_user_data_default(const char *key, char *value, int value_len);int smpd_get_smpd_data_default(const char *key, char *value, int value_len);int smpd_set_user_data(const char *key, const char *value);int smpd_set_smpd_data(const char *key, const char *value);int smpd_delete_user_data(const char *key);int smpd_delete_smpd_data(const char *key);int smpd_getpid(void);char * get_sock_error_string(int error);void smpd_get_password(char *password);void smpd_get_account_and_password(char *account, char *password);int smpd_get_credentials_from_parent(MPIDU_Sock_set_t set, MPIDU_Sock_t sock);int smpd_get_smpd_password_from_parent(MPIDU_Sock_set_t set, MPIDU_Sock_t sock);int smpd_get_opt(int *argc, char ***argv, char * flag);int smpd_get_opt_int(int *argc, char ***argv, char * flag, int *n);int smpd_get_opt_long(int *argc, char ***argv, char * flag, long *n);int smpd_get_opt_double(int *argc, char ***argv, char * flag, double *d);int smpd_get_opt_string(int *argc, char ***argv, char * flag, char *str, int len);int smpd_get_opt_two_strings(int *argc, char ***argv, char * flag, char *str1, int len1, char *str2, int len2);int smpd_get_win_opt_string(int *argc, char ***argv, char * flag, char *str, int len);#ifdef HAVE_WINDOWS_Hvoid smpd_parse_account_domain(const char *domain_account, char *account, char *domain);int smpd_get_user_handle(char *account, char *domain, char *password, HANDLE *handle_ptr);int smpd_get_user_name(char *account, char *domain, char *full_domain);int smpd_make_socket_loop(SOCKET *pRead, SOCKET *pWrite);int smpd_make_socket_loop_choose(SOCKET *pRead, int read_overlapped, SOCKET *pWrite, int write_overlapped);#endifint smpd_generate_session_header(char *str, int session_id);int smpd_interpret_session_header(char *str);int smpd_command_destination(int dest, smpd_context_t **dest_context);int smpd_forward_command(smpd_context_t *src, smpd_context_t *dest);int smpd_launch_process(smpd_process_t *process, int priorityClass, int priority, int dbg, MPIDU_Sock_set_t set);int smpd_encode_buffer(char *dest, int dest_length, const char *src, int src_length, int *num_encoded);int smpd_decode_buffer(const char *str, char *dest, int length, int *num_decoded);int smpd_create_process_struct(int rank, smpd_process_t **process_ptr);int smpd_free_process_struct(smpd_process_t *process);char * smpd_get_context_str(smpd_context_t *context);int smpd_gen_authentication_strings(char *phrase, char *append, char *crypted);#ifdef HAVE_WINDOWS_Hint smpd_start_win_mgr(smpd_context_t *context, SMPD_BOOL use_context_user_handle);#elseint smpd_start_unx_mgr(smpd_context_t *context);#endif#ifdef HAVE_WINDOWS_Hvoid smpd_stdin_thread(SOCKET hWrite);#endif#ifdef USE_PTHREAD_STDIN_REDIRECTIONvoid *smpd_pthread_stdin_thread(void *p);int smpd_cancel_stdin_thread(void);#endifint smpd_handle_command(smpd_context_t *context);int smpd_create_command_from_stdin(char *str, smpd_command_t **cmd_pptr);int smpd_handle_barrier_command(smpd_context_t *context);int smpd_post_abort_command(char *fmt, ...);int smpd_kill_all_processes(void);int smpd_exit(int exitcode);#ifdef HAVE_WINDOWS_Hvoid smpd_translate_win_error(int error, char *msg, int maxlen, char *prepend, ...);#elsetypedef void smpd_sig_fn_t( int );smpd_sig_fn_t *smpd_signal( int signo, smpd_sig_fn_t func );#endifSMPD_BOOL smpd_get_full_path_name(const char *exe, int maxlen, char *path, char **namepart);SMPD_BOOL smpd_search_path(const char *path, const char *exe, int maxlen, char *str);#ifdef HAVE_WINDOWS_Hint smpd_process_from_registry(smpd_process_t *process);int smpd_process_to_registry(smpd_process_t *process, char *actual_exe);int smpd_clear_process_registry(void);int smpd_validate_process_registry(void);SMPD_BOOL smpd_read_password_from_registry(int index, char *szAccount, char *szPassword);SMPD_BOOL smpd_save_password_to_registry(int index, const char *szAccount, const char *szPassword, SMPD_BOOL persistent);SMPD_BOOL smpd_delete_current_password_registry_entry(int index);int smpd_cache_password(const char *account, const char *password);SMPD_BOOL smpd_get_cached_password(char *account, char *password);int smpd_delete_cached_password(void);#endifint smpd_do_console(void);int smpd_restart(void);SMPD_BOOL smpd_snprintf_update(char **str_pptr, int *len_ptr, char *str_format, ...);const char * smpd_get_state_string(smpd_state_t state);const char * smpd_get_cmd_state_string(smpd_command_state_t state);SMPD_BOOL smpd_command_to_string(char **str_pptr, int *len_ptr, int indent, smpd_command_t *cmd_ptr);SMPD_BOOL smpd_process_to_string(char **str_pptr, int *len_ptr, int indent, smpd_process_t *process);SMPD_BOOL smpd_is_affirmative(const char *str);int smpd_hide_string_arg(char *str, const char *flag);int smpd_get_default_hosts(void);int smpd_lock_smpd_data(void);int smpd_unlock_smpd_data(void);int smpd_insert_into_dynamic_hosts(void);int smpd_remove_from_dynamic_hosts(void);int smpd_get_pwd_from_file(char *file_name);int smpd_get_next_hostname(char *host, char *alt_host);SMPD_BOOL smpd_parse_machine_file(char *file_name);int smpd_parse_hosts_string(const char *host_str);int smpd_get_host_id(char *host, int *id_ptr);int smpd_get_next_host(smpd_host_node_t **host_node_pptr, smpd_launch_node_t *launch_node);SMPD_BOOL smpd_get_argcv_from_file(FILE *fin, int *argcp, char ***argvp);int smpd_create_cliques(smpd_launch_node_t *list);int smpd_handle_spawn_command(smpd_context_t *context);int smpd_handle_abort_job_command(smpd_context_t *context);int smpd_abort_job(char *name, int rank, char *fmt, ...);int smpd_suspend_process(smpd_process_t *process);int smpd_kill_process(smpd_process_t *process, int exit_code);int smpd_handle_suspend_result(smpd_command_t *cmd, char *result_str);int smpd_watch_processes(void);int smpd_get_hostname(char *host, int length);int PMIX_Start_root_smpd(int nproc, char *host, int len, int *port);int PMIX_Stop_root_smpd(void);int smpd_hash(char *input, int input_length, char *output, int output_length);int smpd_encrypt_data(char *input, int input_length, char *output, int output_length);int smpd_decrypt_data(char *input, int input_length, char *output, int *output_length);int smpd_get_all_smpd_data(smpd_data_t **data);int smpd_create_sspi_client_context(smpd_sspi_client_context_t **new_context);int smpd_free_sspi_client_context(smpd_sspi_client_context_t **context);int smpd_sspi_context_init(smpd_sspi_client_context_t **sspi_context_pptr, const char *host, int port, smpd_sspi_type_t type);int smpd_sspi_context_iter(int sspi_id, void **sspi_buffer_pptr, int *length_ptr);SMPD_BOOL smpd_setup_scp(void);SMPD_BOOL smpd_remove_scp(void);int smpd_register_spn(const char *dc, const char *dn, const char *dh);int smpd_lookup_spn(char *target, int length, const char * host, int port);SMPD_BOOL smpd_map_user_drives(char *pszMap, char *pszAccount, char *pszPassword, char *pszError, int maxerrlength);SMPD_BOOL smpd_unmap_user_drives(char *pszMap);void smpd_finalize_drive_maps(void);int smpd_append_env_option(char *str, int maxlen, const char *env_name, const char *env_val);#ifdef HAVE_WINDOWS_Hint smpd_add_job_key(const char *key, const char *username, const char *domain, const char *full_domain);int smpd_add_job_key_and_handle(const char *key, const char *username, const char *domain, const char *full_domain, HANDLE hUser);int smpd_remove_job_key(const char *key);int smpd_associate_job_key(const char *key, const char *username, const char *domain, const char *full_domain, HANDLE user_handle);int smpd_lookup_job_key(const char *key, const char *username, HANDLE *user_handle, HANDLE *job_handle);#endifSMPD_BOOL smpd_verify_version(const char *challenge);void smpd_fix_up_host_tree(smpd_host_node_t *node);SMPD_BOOL smpd_isnumbers_with_colon(const char *str);int smpd_add_host_to_default_list(const char *hostname);int smpd_add_extended_host_to_default_list(const char *hostname, const char *alt_hostname, const int num_cpus);int smpd_parse_map_string(const char *str, smpd_map_drive_node_t **list);int smpd_delayed_spawn_enqueue(smpd_context_t *context);int smpd_delayed_spawn_dequeue(smpd_context_t **context);int smpd_handle_delayed_spawn_command(void);#if defined(__cplusplus)}#endif#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -