Fixed dce/rpc to use global_machine_sid (auto generated in server.c if
authorJeremy Allison <jra@samba.org>
Thu, 14 May 1998 03:32:21 +0000 (03:32 +0000)
committerJeremy Allison <jra@samba.org>
Thu, 14 May 1998 03:32:21 +0000 (03:32 +0000)
not present in smb.conf).
Jeremy.

source/lsarpcd/srv_lsa.c
source/rpc_server/srv_lsa.c
source/rpc_server/srv_netlog.c
source/rpc_server/srv_samr.c

index df4b95db9edc0e17440f078abea06bf198b96106..930b607770769ed2dbad26b5a4ccee65b4b644ca 100644 (file)
@@ -28,7 +28,7 @@
 #include "nterr.h"
 
 extern int DEBUGLEVEL;
-
+extern DOM_SID global_machine_sid;
 
 /***************************************************************************
 lsa_reply_open_policy
@@ -306,16 +306,14 @@ static void api_lsa_query_info( int uid, prs_struct *data,
 {
        LSA_Q_QUERY_INFO q_i;
        pstring dom_name;
-       DOM_SID dom_sid;
 
        /* grab the info class and policy handle */
        lsa_io_q_query("", &q_i, data, 0);
 
        pstrcpy(dom_name, lp_workgroup());
-       string_to_sid(&dom_sid, lp_domain_sid());
 
        /* construct reply.  return status is always 0x0 */
-       lsa_reply_query_info(&q_i, rdata, dom_name, &dom_sid);
+       lsa_reply_query_info(&q_i, rdata, dom_name, &global_machine_sid);
 }
 
 /***************************************************************************
@@ -326,7 +324,6 @@ static void api_lsa_lookup_sids( int uid, prs_struct *data,
 {
        LSA_Q_LOOKUP_SIDS q_l;
        pstring dom_name;
-       DOM_SID dom_sid;
        DOM_SID sid_S_1_1;
        DOM_SID sid_S_1_3;
        DOM_SID sid_S_1_5;
@@ -336,7 +333,6 @@ static void api_lsa_lookup_sids( int uid, prs_struct *data,
 
        pstrcpy(dom_name, lp_workgroup());
 
-       string_to_sid(&dom_sid , lp_domain_sid());
        string_to_sid(&sid_S_1_1, "S-1-1");
         string_to_sid(&sid_S_1_3, "S-1-3");
         string_to_sid(&sid_S_1_5, "S-1-5");
@@ -344,7 +340,7 @@ static void api_lsa_lookup_sids( int uid, prs_struct *data,
        /* construct reply.  return status is always 0x0 */
        lsa_reply_lookup_sids(rdata,
                               q_l.sids.num_entries, q_l.sids.sid, /* SIDs */
-                              dom_name, &dom_sid, /* domain name, domain SID */
+                              dom_name, &global_machine_sid, /* domain name, domain SID */
                               &sid_S_1_1, &sid_S_1_3, &sid_S_1_5); /* the three other SIDs */
 }
 
@@ -357,7 +353,6 @@ static void api_lsa_lookup_names( int uid, prs_struct *data,
        int i;
        LSA_Q_LOOKUP_RIDS q_l;
        pstring dom_name;
-       DOM_SID dom_sid;
        DOM_SID sid_S_1_1;
        DOM_SID sid_S_1_3;
        DOM_SID sid_S_1_5;
@@ -369,7 +364,6 @@ static void api_lsa_lookup_names( int uid, prs_struct *data,
 
        pstrcpy(dom_name, lp_workgroup());
 
-       string_to_sid(&dom_sid , lp_domain_sid());
        string_to_sid(&sid_S_1_1, "S-1-1");
         string_to_sid(&sid_S_1_3, "S-1-3");
         string_to_sid(&sid_S_1_5, "S-1-5");
@@ -388,7 +382,7 @@ static void api_lsa_lookup_names( int uid, prs_struct *data,
        /* construct reply.  return status is always 0x0 */
        lsa_reply_lookup_rids(rdata,
                               q_l.num_entries, dom_rids, /* text-converted SIDs */
-                              dom_name, &dom_sid, /* domain name, domain SID */
+                              dom_name, &global_machine_sid, /* domain name, domain SID */
                               &sid_S_1_1, &sid_S_1_3, &sid_S_1_5); /* the three other SIDs */
 }
 
index df4b95db9edc0e17440f078abea06bf198b96106..930b607770769ed2dbad26b5a4ccee65b4b644ca 100644 (file)
@@ -28,7 +28,7 @@
 #include "nterr.h"
 
 extern int DEBUGLEVEL;
-
+extern DOM_SID global_machine_sid;
 
 /***************************************************************************
 lsa_reply_open_policy
@@ -306,16 +306,14 @@ static void api_lsa_query_info( int uid, prs_struct *data,
 {
        LSA_Q_QUERY_INFO q_i;
        pstring dom_name;
-       DOM_SID dom_sid;
 
        /* grab the info class and policy handle */
        lsa_io_q_query("", &q_i, data, 0);
 
        pstrcpy(dom_name, lp_workgroup());
-       string_to_sid(&dom_sid, lp_domain_sid());
 
        /* construct reply.  return status is always 0x0 */
-       lsa_reply_query_info(&q_i, rdata, dom_name, &dom_sid);
+       lsa_reply_query_info(&q_i, rdata, dom_name, &global_machine_sid);
 }
 
 /***************************************************************************
@@ -326,7 +324,6 @@ static void api_lsa_lookup_sids( int uid, prs_struct *data,
 {
        LSA_Q_LOOKUP_SIDS q_l;
        pstring dom_name;
-       DOM_SID dom_sid;
        DOM_SID sid_S_1_1;
        DOM_SID sid_S_1_3;
        DOM_SID sid_S_1_5;
@@ -336,7 +333,6 @@ static void api_lsa_lookup_sids( int uid, prs_struct *data,
 
        pstrcpy(dom_name, lp_workgroup());
 
-       string_to_sid(&dom_sid , lp_domain_sid());
        string_to_sid(&sid_S_1_1, "S-1-1");
         string_to_sid(&sid_S_1_3, "S-1-3");
         string_to_sid(&sid_S_1_5, "S-1-5");
@@ -344,7 +340,7 @@ static void api_lsa_lookup_sids( int uid, prs_struct *data,
        /* construct reply.  return status is always 0x0 */
        lsa_reply_lookup_sids(rdata,
                               q_l.sids.num_entries, q_l.sids.sid, /* SIDs */
-                              dom_name, &dom_sid, /* domain name, domain SID */
+                              dom_name, &global_machine_sid, /* domain name, domain SID */
                               &sid_S_1_1, &sid_S_1_3, &sid_S_1_5); /* the three other SIDs */
 }
 
@@ -357,7 +353,6 @@ static void api_lsa_lookup_names( int uid, prs_struct *data,
        int i;
        LSA_Q_LOOKUP_RIDS q_l;
        pstring dom_name;
-       DOM_SID dom_sid;
        DOM_SID sid_S_1_1;
        DOM_SID sid_S_1_3;
        DOM_SID sid_S_1_5;
@@ -369,7 +364,6 @@ static void api_lsa_lookup_names( int uid, prs_struct *data,
 
        pstrcpy(dom_name, lp_workgroup());
 
-       string_to_sid(&dom_sid , lp_domain_sid());
        string_to_sid(&sid_S_1_1, "S-1-1");
         string_to_sid(&sid_S_1_3, "S-1-3");
         string_to_sid(&sid_S_1_5, "S-1-5");
@@ -388,7 +382,7 @@ static void api_lsa_lookup_names( int uid, prs_struct *data,
        /* construct reply.  return status is always 0x0 */
        lsa_reply_lookup_rids(rdata,
                               q_l.num_entries, dom_rids, /* text-converted SIDs */
-                              dom_name, &dom_sid, /* domain name, domain SID */
+                              dom_name, &global_machine_sid, /* domain name, domain SID */
                               &sid_S_1_1, &sid_S_1_3, &sid_S_1_5); /* the three other SIDs */
 }
 
index edc2d859df4e0caa7a9d12967b6a5acda688b921..23625b96ef9978257c2f6c8633b9ef02dce83335 100644 (file)
@@ -32,6 +32,7 @@ extern int DEBUGLEVEL;
 extern BOOL sam_logon_in_ssb;
 extern pstring samlogon_user;
 extern pstring global_myname;
+extern DOM_SID global_machine_sid;
 
 /*************************************************************************
  make_net_r_req_chal:
@@ -680,7 +681,6 @@ static void api_net_sam_logon( int uid,
     pstring my_name;
     pstring my_workgroup;
     pstring domain_groups;
-    DOM_SID dom_sid;
     char *other_sids;
     uint32 r_uid;
     uint32 r_gid;
@@ -697,7 +697,6 @@ static void api_net_sam_logon( int uid,
 
     pstrcpy(logon_script, lp_logon_script());
     pstrcpy(profile_path, lp_logon_path());
-    string_to_sid(&dom_sid, lp_domain_sid());
 
     pstrcpy(other_sids, lp_domain_other_sids());
     pstrcpy(my_workgroup, lp_workgroup());
@@ -757,7 +756,7 @@ static void api_net_sam_logon( int uid,
                           my_name     , /* char *logon_srv */
                           my_workgroup, /* char *logon_dom */
 
-                          &dom_sid,     /* DOM_SID *dom_sid */
+                          &global_machine_sid,     /* DOM_SID *dom_sid */
                           other_sids); /* char *other_sids */
     }
     else
index 8070336f875c7755765ad1f4e1dca9cfbb2c7313..88217f73aa95c4eed518b92707ae630a4b88125f 100644 (file)
@@ -30,6 +30,8 @@ extern int DEBUGLEVEL;
 
 extern BOOL sam_logon_in_ssb;
 extern pstring samlogon_user;
+extern DOM_SID global_machine_sid;
+
 extern rid_name domain_group_rids[];
 extern rid_name domain_alias_rids[];
 
@@ -231,7 +233,7 @@ static void samr_reply_unknown_3(SAMR_Q_UNKNOWN_3 *q_u,
 
        if (status == 0x0)
        {
-               fstrcpy(user_sid, lp_domain_sid());
+               sid_to_string(user_sid, &global_machine_sid);
                slprintf(user_rid, sizeof(user_rid) - 1, "-%x", rid);
                fstrcat(user_sid, user_rid);