Merge of new 2.2 code into HEAD (Gerald I hate you :-) :-). Allows new SAMR
[nivanova/samba-autobuild/.git] / source3 / smbd / lanman.c
index 33da4793615ace8423f054be0368686822112ed2..f5e1de16087df8736ce4954171020795855b876d 100644 (file)
@@ -1,4 +1,3 @@
-#define OLD_NTDOMAIN 1
 /* 
    Unix SMB/Netbios implementation.
    Version 1.9.
@@ -413,14 +412,14 @@ static int check_printq_info(struct pack_desc* desc,
 }
 
 
-#define JOB_STATUS_QUEUED 0
-#define JOB_STATUS_PAUSED 1
-#define JOB_STATUS_SPOOLING 2
-#define JOB_STATUS_PRINTING 3
-#define JOB_STATUS_PRINTED 4
+#define RAP_JOB_STATUS_QUEUED 0
+#define RAP_JOB_STATUS_PAUSED 1
+#define RAP_JOB_STATUS_SPOOLING 2
+#define RAP_JOB_STATUS_PRINTING 3
+#define RAP_JOB_STATUS_PRINTED 4
 
-#define QUEUE_STATUS_PAUSED 1
-#define QUEUE_STATUS_ERROR 2
+#define RAP_QUEUE_STATUS_PAUSED 1
+#define RAP_QUEUE_STATUS_ERROR 2
 
 /* turn a print job status into a on the wire status 
 */
@@ -428,13 +427,13 @@ static int printj_status(int v)
 {
        switch (v) {
        case LPQ_QUEUED:
-               return JOB_STATUS_QUEUED;
+               return RAP_JOB_STATUS_QUEUED;
        case LPQ_PAUSED:
-               return JOB_STATUS_PAUSED;
+               return RAP_JOB_STATUS_PAUSED;
        case LPQ_SPOOLING:
-               return JOB_STATUS_SPOOLING;
+               return RAP_JOB_STATUS_SPOOLING;
        case LPQ_PRINTING:
-               return JOB_STATUS_PRINTING;
+               return RAP_JOB_STATUS_PRINTING;
        }
        return 0;
 }
@@ -447,9 +446,9 @@ static int printq_status(int v)
        case LPQ_QUEUED:
                return 0;
        case LPQ_PAUSED:
-               return QUEUE_STATUS_PAUSED;
+               return RAP_QUEUE_STATUS_PAUSED;
        }
-       return QUEUE_STATUS_ERROR;
+       return RAP_QUEUE_STATUS_ERROR;
 }
 
 static void fill_printjob_info(connection_struct *conn, int snum, int uLevel,
@@ -736,7 +735,7 @@ static void fill_printq_info(connection_struct *conn, int snum, int uLevel,
                PACKI(desc,"W",5);              /* pad1 */
                PACKS(desc,"z","");             /* pszSepFile */
                PACKS(desc,"z","WinPrint");     /* pszPrProc */
-               PACKS(desc,"z","");             /* pszParms */
+               PACKS(desc,"z",NULL);           /* pszParms */
                PACKS(desc,"z",NULL);           /* pszComment - don't ask.... JRA */
                /* "don't ask" that it's done this way to fix corrupted 
                   Win9X/ME printer comments. */
@@ -1341,7 +1340,8 @@ static BOOL api_RNetServerEnum(connection_struct *conn, uint16 vuid, char *param
   data_len = fixed_len = string_len = 0;
   missed = 0;
 
-  qsort(servers,total,sizeof(servers[0]),QSORT_CAST srv_comp);
+  if (total > 0)
+    qsort(servers,total,sizeof(servers[0]),QSORT_CAST srv_comp);
 
   {
     char *lastname=NULL;
@@ -3329,6 +3329,3 @@ int api_reply(connection_struct *conn,uint16 vuid,char *outbuf,char *data,char *
   
   return -1;
 }
-
-
-#undef OLD_NTDOMAIN