Revert "Fix bug #7781 (Samba transforms "ShareName" to lowercase when adding new...
[samba.git] / source3 / smbd / lanman.c
index 83f0da422a35cbcd300a3f14904444904776ce36..7b01968a1f04146b874af76e4b06cfc54611f300 100644 (file)
@@ -1351,10 +1351,9 @@ static int fill_srv_info(struct srv_info_struct *service,
 }
 
 
-static bool srv_comp(struct srv_info_struct *s1,struct srv_info_struct *s2)
+static int srv_comp(struct srv_info_struct *s1,struct srv_info_struct *s2)
 {
-#undef strcasecmp
-       return strcasecmp(s1->name,s2->name);
+       return StrCaseCmp(s1->name,s2->name);
 }
 
 /****************************************************************************
@@ -1458,7 +1457,7 @@ static bool api_RNetServerEnum2(connection_struct *conn, uint16 vuid,
                        DEBUG(4,("fill_srv_info[%d] %20s %8x %25s %15s\n",
                                i, s->name, s->type, s->comment, s->domain));
 
-                       if (data_len <= buf_len) {
+                       if (data_len < buf_len) {
                                counted++;
                                fixed_len += f_len;
                                string_len += s_len;
@@ -1515,7 +1514,7 @@ static bool api_RNetServerEnum2(connection_struct *conn, uint16 vuid,
        return True;
 }
 
-static bool srv_name_match(const char *n1, const char *n2)
+static int srv_name_match(const char *n1, const char *n2)
 {
        /*
         * [MS-RAP] footnote <88> for Section 3.2.5.15 says:
@@ -1524,7 +1523,7 @@ static bool srv_name_match(const char *n1, const char *n2)
         *  the server will return a list of servers that exist on
         *  the network greater than or equal to the FirstNameToReturn.
         */
-       int ret = strcasecmp(n1, n2);
+       int ret = StrCaseCmp(n1, n2);
 
        if (ret <= 0) {
                return 0;
@@ -1637,7 +1636,7 @@ static bool api_RNetServerEnum3(connection_struct *conn, uint16 vuid,
                         */
                        for (;first > 0;) {
                                int ret;
-                               ret = strcasecmp(first_name,
+                               ret = StrCaseCmp(first_name,
                                                 servers[first-1].name);
                                if (ret > 0) {
                                        break;
@@ -1664,7 +1663,7 @@ static bool api_RNetServerEnum3(connection_struct *conn, uint16 vuid,
                        DEBUG(4,("fill_srv_info[%d] %20s %8x %25s %15s\n",
                                i, s->name, s->type, s->comment, s->domain));
 
-                       if (data_len <= buf_len) {
+                       if (data_len < buf_len) {
                                counted++;
                                fixed_len += f_len;
                                string_len += s_len;
@@ -2031,7 +2030,7 @@ static bool api_RNetShareEnum( connection_struct *conn, uint16 vuid,
                if( lp_browseable( i ) && lp_snum_ok( i ) && (strlen(servicename_dos) < 13)) {
                        total++;
                        data_len += fill_share_info(conn,i,uLevel,0,&f_len,0,&s_len,0);
-                       if (data_len <= buf_len) {
+                       if (data_len < buf_len) {
                                counted++;
                                fixed_len += f_len;
                                string_len += s_len;