From b5be2819ffa59573e5cf42bf005fc6d6799c47c4 Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Sun, 30 Sep 2007 22:30:10 +0000
Subject: [PATCH] Removed ULB and DLB ARS keywords, replaced with ULK (uploaded
 kilobytes), ULM (uploaded megabytes), and DLK and DLM (for downloaded
 K/Mbytes).

---
 src/sbbs3/ars.c      | 20 ++++++++++++++------
 src/sbbs3/ars_defs.h |  6 ++++--
 src/sbbs3/chk_ar.cpp | 22 ++++++++++++++++++----
 src/sbbs3/userdat.c  | 22 ++++++++++++++++++----
 4 files changed, 54 insertions(+), 16 deletions(-)

diff --git a/src/sbbs3/ars.c b/src/sbbs3/ars.c
index 8fe0ca34da..3a2f8aea2e 100644
--- a/src/sbbs3/ars.c
+++ b/src/sbbs3/ars.c
@@ -236,14 +236,20 @@ uchar* arstr(ushort* count, char* str, scfg_t* cfg)
 			else if(!strnicmp(str+i,"ULS",3)) {
 				artype=AR_ULS;
 				i+=2; }
-			else if(!strnicmp(str+i,"ULB",3)) {
-				artype=AR_ULB;
+			else if(!strnicmp(str+i,"ULK",3)) {
+				artype=AR_ULK;
+				i+=2; }
+			else if(!strnicmp(str+i,"ULM",3)) {
+				artype=AR_ULM;
 				i+=2; }
 			else if(!strnicmp(str+i,"DLS",3)) {
 				artype=AR_DLS;
 				i+=2; }
-			else if(!strnicmp(str+i,"DLB",3)) {
-				artype=AR_DLB;
+			else if(!strnicmp(str+i,"DLK",3)) {
+				artype=AR_DLK;
+				i+=2; }
+			else if(!strnicmp(str+i,"DLM",3)) {
+				artype=AR_DLM;
 				i+=2; }
 			else if(!strnicmp(str+i,"DAY",3)) {
 				artype=AR_DAY;
@@ -515,9 +521,11 @@ uchar* arstr(ushort* count, char* str, scfg_t* cfg)
 				case AR_LASTON:
 				case AR_LOGONS:
 				case AR_ULS:
-				case AR_ULB:
+				case AR_ULK:
+				case AR_ULM:
 				case AR_DLS:
-				case AR_DLB:
+				case AR_DLK:
+				case AR_DLM:
 					*((short *)(ar+j))=n;
 					j+=2;
 					break;
diff --git a/src/sbbs3/ars_defs.h b/src/sbbs3/ars_defs.h
index 58b075db64..8dff440263 100644
--- a/src/sbbs3/ars_defs.h
+++ b/src/sbbs3/ars_defs.h
@@ -115,9 +115,11 @@ enum {                              /* Access requirement binaries */
 	,AR_INACTIVE
 	,AR_DELETED
 	,AR_ULS
-	,AR_ULB
+	,AR_ULK
+	,AR_ULM
 	,AR_DLS
-	,AR_DLB
+	,AR_DLK
+	,AR_DLM
     };
 
 #endif		/* Don't add anything after this line */
diff --git a/src/sbbs3/chk_ar.cpp b/src/sbbs3/chk_ar.cpp
index 8a477564e7..92d552982c 100644
--- a/src/sbbs3/chk_ar.cpp
+++ b/src/sbbs3/chk_ar.cpp
@@ -456,8 +456,15 @@ bool sbbs_t::ar_exp(uchar **ptrptr, user_t* user)
 					result=!_not;
 				(*ptrptr)++;
 				break;
-			case AR_ULB:
-				if((equal && user->ulb!=i) || (!equal && user->ulb<i))
+			case AR_ULK:
+				if((equal && (user->ulb/1024)!=i) || (!equal && (user->ulb/1024)<i))
+					result=_not;
+				else
+					result=!_not;
+				(*ptrptr)++;
+				break;
+			case AR_ULM:
+				if((equal && (user->ulb/(1024*1024))!=i) || (!equal && (user->ulb/(1024*1024))<i))
 					result=_not;
 				else
 					result=!_not;
@@ -470,8 +477,15 @@ bool sbbs_t::ar_exp(uchar **ptrptr, user_t* user)
 					result=!_not;
 				(*ptrptr)++;
 				break;
-			case AR_DLB:
-				if((equal && user->dlb!=i) || (!equal && user->dlb<i))
+			case AR_DLK:
+				if((equal && user->dlb/1024!=i) || (!equal && user->dlb/1024<i))
+					result=_not;
+				else
+					result=!_not;
+				(*ptrptr)++;
+				break;
+			case AR_DLM:
+				if((equal && user->dlb/(1024*1024)!=i) || (!equal && user->dlb/(1024*1024)<i))
 					result=_not;
 				else
 					result=!_not;
diff --git a/src/sbbs3/userdat.c b/src/sbbs3/userdat.c
index 847f744093..2f7b779c18 100644
--- a/src/sbbs3/userdat.c
+++ b/src/sbbs3/userdat.c
@@ -1679,8 +1679,15 @@ static BOOL ar_exp(scfg_t* cfg, uchar **ptrptr, user_t* user)
 					result=!not;
 				(*ptrptr)++;
 				break;
-			case AR_ULB:
-				if((equal && user->ulb!=i) || (!equal && user->ulb<i))
+			case AR_ULK:
+				if((equal && user->ulb/1024!=i) || (!equal && user->ulb/1024<i))
+					result=not;
+				else
+					result=!not;
+				(*ptrptr)++;
+				break;
+			case AR_ULM:
+				if((equal && user->ulb/(1024*1024)!=i) || (!equal && user->ulb/(1024*1024)<i))
 					result=not;
 				else
 					result=!not;
@@ -1693,8 +1700,15 @@ static BOOL ar_exp(scfg_t* cfg, uchar **ptrptr, user_t* user)
 					result=!not;
 				(*ptrptr)++;
 				break;
-			case AR_DLB:
-				if((equal && user->dlb!=i) || (!equal && user->dlb<i))
+			case AR_DLK:
+				if((equal && user->dlb/1024!=i) || (!equal && user->dlb/1024<i))
+					result=not;
+				else
+					result=!not;
+				(*ptrptr)++;
+				break;
+			case AR_DLM:
+				if((equal && user->dlb/(1024*1024)!=i) || (!equal && user->dlb/(1024*1024)<i))
 					result=not;
 				else
 					result=!not;
-- 
GitLab