]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/lib/protos.h
kes Correctly detect Ubuntu systems, and add ubuntu platform directory.
[bacula/bacula] / bacula / src / lib / protos.h
index 043a40a6b929093e5e2e93ec28c0f99fad75911b..4197b31e74b0651a7ddff3ff4e18a4483c83d62c 100644 (file)
@@ -31,6 +31,9 @@
  *   Version $Id$
  */
 
+#ifndef __LIBPROTOS_H
+#define __LIBPROTOS_H
+
 class JCR;
 
 /* attr.c */
@@ -199,10 +202,9 @@ void unlock_jobs();
 JCR *jcr_walk_start();
 JCR *jcr_walk_next(JCR *prev_jcr);
 void jcr_walk_end(JCR *jcr);
-uint32_t get_jobid_from_tid(pthread_t tid);
-uint32_t get_jobid_from_tid();             
-JCR *get_jcr_from_tid(pthread_t tid);
-JCR *get_jcr_from_tid();
+uint32_t get_jobid_from_tsd();             
+JCR *get_jcr_from_tsd();
+void set_jcr_in_tsd(JCR *jcr);
 
 
 /* lex.c */
@@ -284,9 +286,9 @@ TLS_CONTEXT      *new_tls_context        (const char *ca_certfile,
                                           bool verify_peer);
 void             free_tls_context        (TLS_CONTEXT *ctx);
 #ifdef HAVE_TLS
-bool             tls_postconnect_verify_host  (TLS_CONNECTION *tls,
+bool             tls_postconnect_verify_host(JCR *jcr, TLS_CONNECTION *tls,
                                                const char *host);
-bool             tls_postconnect_verify_cn    (TLS_CONNECTION *tls,
+bool             tls_postconnect_verify_cn(JCR *jcr, TLS_CONNECTION *tls,
                                                alist *verify_list);
 TLS_CONNECTION   *new_tls_connection     (TLS_CONTEXT *ctx, int fd);
 bool             tls_bsock_accept        (BSOCK *bsock);
@@ -301,6 +303,11 @@ bool             get_tls_enable          (TLS_CONTEXT *ctx);
 
 
 /* util.c */
+
+extern "C" {
+typedef char *(*job_code_callback_t)(JCR *, const char *);
+}
+
 bool             is_buf_zero             (char *buf, int len);
 void             lcase                   (char *str);
 void             bash_spaces             (char *str);
@@ -311,13 +318,15 @@ char *           encode_time             (time_t time, char *buf);
 char *           encode_mode             (mode_t mode, char *buf);
 int              do_shell_expansion      (char *name, int name_len);
 void             jobstatus_to_ascii      (int JobStatus, char *msg, int maxlen);
-int              run_program             (char *prog, int wait, POOLMEM *results);
-int              run_program_full_output (char *prog, int wait, POOLMEM *results);
+int              run_program             (char *prog, int wait, POOLMEM *&results);
+int              run_program_full_output (char *prog, int wait, POOLMEM *&results);
 const char *     job_type_to_str         (int type);
 const char *     job_status_to_str       (int stat);
 const char *     job_level_to_str        (int level);
 void             make_session_key        (char *key, char *seed, int mode);
-POOLMEM *        edit_job_codes          (JCR *jcr, char *omsg, char *imsg, const char *to);
+void             encode_session_key      (char *encode, char *session, char *key, int maxlen);
+void             decode_session_key      (char *decode, char *session, char *key, int maxlen);
+POOLMEM *        edit_job_codes          (JCR *jcr, char *omsg, char *imsg, const char *to, job_code_callback_t job_code_callback = NULL);
 void             set_working_directory   (char *wd);
 const char *     last_path_separator     (const char *str);
 
@@ -336,3 +345,5 @@ btimer_t *start_thread_timer(JCR *jcr, pthread_t tid, uint32_t wait);
 void stop_thread_timer(btimer_t *wid);
 btimer_t *start_bsock_timer(BSOCK *bs, uint32_t wait);
 void stop_bsock_timer(btimer_t *wid);
+
+#endif /* __LIBPROTOS_H */