libndr: Avoid assigning duplicate versions to symbols
[amitay/samba.git] / source3 / printing / print_cups.c
index 53e6dd05dfb024f10a468aa960f1f713e16cf633..0bbd7c8eff38d3a44bb6b15bde5a56bf7f5ada23 100644 (file)
@@ -27,6 +27,7 @@
 #include "printing/pcap.h"
 #include "librpc/gen_ndr/ndr_printcap.h"
 #include "lib/util/sys_rw.h"
+#include "lib/util/string_wrappers.h"
 
 #ifdef HAVE_CUPS
 #include <cups/cups.h>
@@ -108,14 +109,16 @@ cups_passwd_cb(const char *prompt)        /* I - Prompt */
 
 static http_t *cups_connect(TALLOC_CTX *frame)
 {
+       const struct loadparm_substitution *lp_sub =
+               loadparm_s3_global_substitution();
        http_t *http = NULL;
        char *server = NULL, *p = NULL;
        int port;
        int timeout = lp_cups_connection_timeout();
        size_t size;
 
-       if (lp_cups_server(talloc_tos()) != NULL && strlen(lp_cups_server(talloc_tos())) > 0) {
-               if (!push_utf8_talloc(frame, &server, lp_cups_server(talloc_tos()), &size)) {
+       if (lp_cups_server(talloc_tos(), lp_sub) != NULL && strlen(lp_cups_server(talloc_tos(), lp_sub)) > 0) {
+               if (!push_utf8_talloc(frame, &server, lp_cups_server(talloc_tos(), lp_sub), &size)) {
                        return NULL;
                }
        } else {
@@ -525,7 +528,7 @@ static void cups_async_callback(struct tevent_context *event_ctx,
        struct pcap_data pcap_data;
        DATA_BLOB pcap_blob;
        enum ndr_err_code ndr_ret;
-       int i;
+       uint32_t i;
 
        DEBUG(5,("cups_async_callback: callback received for printer data. "
                "fd = %d\n", cb_args->pipe_fd));
@@ -571,9 +574,9 @@ static void cups_async_callback(struct tevent_context *event_ctx,
 err_out:
        pcap_cache_destroy_specific(&tmp_pcap_cache);
        TALLOC_FREE(frame);
+       TALLOC_FREE(cache_fd_event);
        close(cb_args->pipe_fd);
        TALLOC_FREE(cb_args);
-       TALLOC_FREE(cache_fd_event);
 }
 
 bool cups_cache_reload(struct tevent_context *ev,