diff --git a/swad_MFU.c b/swad_MFU.c
index cd447cbd..74c8bc09 100644
--- a/swad_MFU.c
+++ b/swad_MFU.c
@@ -45,8 +45,11 @@
/***************************** Private constants *****************************/
/*****************************************************************************/
-#define MFU_MAX_LENGTH_TAB (128 - 1)
-#define MFU_MAX_LENGTH_MENU (128 - 1)
+#define MFU_MAX_CHARS_TAB (128 - 1)
+#define MFU_MAX_BYTES_TAB (MFU_MAX_CHARS_TAB * Str_MAX_BYTES_PER_CHAR)
+
+#define MFU_MAX_CHARS_MENU (128 - 1)
+#define MFU_MAX_BYTES_MENU (MFU_MAX_CHARS_MENU * Str_MAX_BYTES_PER_CHAR)
/*****************************************************************************/
/****************************** Internal types *******************************/
@@ -215,9 +218,9 @@ void MFU_WriteBigMFUActions (struct MFU_ListMFUActions *ListMFUActions)
Act_Action_t Action;
Act_Action_t SuperAction;
const char *Title;
- char TabStr[MFU_MAX_LENGTH_TAB + 1];
- char MenuStr[MFU_MAX_LENGTH_MENU + 1];
- char TabMenuStr[MFU_MAX_LENGTH_TAB + 6 + MFU_MAX_LENGTH_MENU + 1];
+ char TabStr[MFU_MAX_BYTES_TAB + 1];
+ char MenuStr[MFU_MAX_BYTES_MENU + 1];
+ char TabMenuStr[MFU_MAX_BYTES_TAB + 6 + MFU_MAX_BYTES_MENU + 1];
/***** Start frame *****/
Lay_StartRoundFrame (NULL,Txt_My_frequent_actions,NULL,Hlp_STATS_Frequent);
@@ -236,9 +239,9 @@ void MFU_WriteBigMFUActions (struct MFU_ListMFUActions *ListMFUActions)
/* Action string */
SuperAction = Act_Actions[Action].SuperAction;
Str_Copy (TabStr,Txt_TABS_TXT[Act_Actions[SuperAction].Tab],
- MFU_MAX_LENGTH_TAB);
+ MFU_MAX_BYTES_TAB);
Str_Copy (MenuStr,Title,
- MFU_MAX_LENGTH_MENU);
+ MFU_MAX_BYTES_MENU);
sprintf (TabMenuStr,"%s > %s",TabStr,MenuStr);
/* Icon and text */
@@ -274,9 +277,9 @@ void MFU_WriteSmallMFUActions (struct MFU_ListMFUActions *ListMFUActions)
Act_Action_t Action;
Act_Action_t SuperAction;
const char *Title;
- char TabStr[MFU_MAX_LENGTH_TAB + 1];
- char MenuStr[MFU_MAX_LENGTH_MENU + 1];
- char TabMenuStr[MFU_MAX_LENGTH_TAB + 6 + MFU_MAX_LENGTH_MENU + 1];
+ char TabStr[MFU_MAX_BYTES_TAB + 1];
+ char MenuStr[MFU_MAX_BYTES_MENU + 1];
+ char TabMenuStr[MFU_MAX_BYTES_TAB + 6 + MFU_MAX_BYTES_MENU + 1];
/***** Start div and link *****/
fprintf (Gbl.F.Out,"
");
@@ -300,9 +303,9 @@ void MFU_WriteSmallMFUActions (struct MFU_ListMFUActions *ListMFUActions)
/* Action string */
SuperAction = Act_Actions[Action].SuperAction;
Str_Copy (TabStr,Txt_TABS_TXT[Act_Actions[SuperAction].Tab],
- MFU_MAX_LENGTH_TAB);
+ MFU_MAX_BYTES_TAB);
Str_Copy (MenuStr,Title,
- MFU_MAX_LENGTH_MENU);
+ MFU_MAX_BYTES_MENU);
sprintf (TabMenuStr,"%s > %s",TabStr,MenuStr);
/* Icon and text */
diff --git a/swad_changelog.h b/swad_changelog.h
index 6154ca89..33815ddb 100644
--- a/swad_changelog.h
+++ b/swad_changelog.h
@@ -204,13 +204,14 @@
/****************************** Public constants *****************************/
/*****************************************************************************/
-#define Log_PLATFORM_VERSION "SWAD 16.150 (2017-03-07)"
+#define Log_PLATFORM_VERSION "SWAD 16.151 (2017-03-07)"
#define CSS_FILE "swad16.147.css"
#define JS_FILE "swad16.144.js"
// Number of lines (includes comments but not blank lines) has been got with the following command:
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*?.h sql/swad*.sql | tail -1
/*
+ Version 16.151: Mar 07, 2017 Code refactoring related to number of chars and bytes. (216422 lines)
Version 16.150: Mar 07, 2017 Code refactoring related to number of chars and bytes. (216409 lines)
Version 16.149: Mar 07, 2017 Code refactoring related to number of chars and bytes. (216385 lines)
Version 16.148: Mar 06, 2017 Code refactoring in notifications. (216393 lines)
diff --git a/swad_enrollment.c b/swad_enrollment.c
index 49e44d8c..fff52fd1 100644
--- a/swad_enrollment.c
+++ b/swad_enrollment.c
@@ -330,7 +330,7 @@ void Enr_WriteFormToReqAnotherUsrID (Act_Action_t NextAction)
"",
The_ClassForm[Gbl.Prefs.Theme],
Txt_nick_email_or_ID,
- Usr_MAX_BYTES_USR_LOGIN);
+ Usr_MAX_CHARS_USR_LOGIN);
/***** Send button*****/
Lay_PutConfirmButton (Txt_Continue);
@@ -1420,7 +1420,8 @@ static void Enr_ReceiveFormUsrsCrs (Rol_Role_t Role)
UsrDat.UsrCod = -1L;
/* Find next string in text */
- Str_GetNextStringUntilSeparator (&Ptr,UsrDat.UsrIDNickOrEmail,Usr_MAX_BYTES_USR_LOGIN);
+ Str_GetNextStringUntilSeparator (&Ptr,UsrDat.UsrIDNickOrEmail,
+ Usr_MAX_BYTES_USR_LOGIN);
/* Reset default list of users' codes */
ListUsrCods.NumUsrs = 0;
@@ -1542,7 +1543,8 @@ static void Enr_ReceiveFormUsrsCrs (Rol_Role_t Role)
ItLooksLikeAUsrID = false;
/* Find next string in text */
- Str_GetNextStringUntilSeparator (&Ptr,UsrDat.UsrIDNickOrEmail,Usr_MAX_BYTES_USR_LOGIN);
+ Str_GetNextStringUntilSeparator (&Ptr,UsrDat.UsrIDNickOrEmail,
+ Usr_MAX_BYTES_USR_LOGIN);
/* Reset default list of users' codes */
ListUsrCods.NumUsrs = 0;
diff --git a/swad_file_browser.c b/swad_file_browser.c
index 51a4cebe..7f593d69 100644
--- a/swad_file_browser.c
+++ b/swad_file_browser.c
@@ -11139,7 +11139,7 @@ void Brw_RemoveUsrWorksInAllCrss (struct UsrData *UsrDat,Cns_QuietOrVerbose_t Qu
/*****************************************************************************/
// This function may be called inside a web service, so don't report error
-#define Brw_MAX_BYTES_FILE_CONTENT_STR (100 + NAME_MAX + 100 + PATH_MAX + 100 + (Usr_MAX_BYTES_NAME + 1) * 3 + 100 + Fil_MAX_BYTES_FILE_SIZE_STRING)
+#define Brw_MAX_BYTES_FILE_CONTENT_STR (100 + NAME_MAX + 100 + PATH_MAX + 100 + Usr_MAX_BYTES_FULL_NAME + 100 + Fil_MAX_BYTES_FILE_SIZE_STRING)
void Brw_GetSummaryAndContentOfFile (char SummaryStr[Cns_MAX_BYTES_SUMMARY_STRING + 1],
char **ContentStr,
diff --git a/swad_global.h b/swad_global.h
index 313c8854..6e958e37 100644
--- a/swad_global.h
+++ b/swad_global.h
@@ -602,10 +602,10 @@ struct Globals
long CrsCod;
char ShrtName[Crs_MAX_BYTES_COURSE_SHRT_NAME + 1];
} Courses[Crs_MAX_COURSES_PER_USR]; // Distinct courses in my messages sent or received
- long FilterCrsCod; // Show only messages sent from this course code
+ long FilterCrsCod; // Show only messages sent from this course code
char FilterCrsShrtName[Crs_MAX_BYTES_COURSE_SHRT_NAME + 1];
- char FilterFromTo[Usr_MAX_LENGTH_USR_NAME_OR_SURNAME * 3 + 1]; // Show only messages from/to these users
- char FilterContent[Msg_MAX_LENGTH_FILTER_CONTENT + 1]; // Show only messages that match this content
+ char FilterFromTo[Usr_MAX_BYTES_FULL_NAME + 1]; // Show only messages from/to these users
+ char FilterContent[Msg_MAX_BYTES_FILTER_CONTENT + 1]; // Show only messages that match this content
bool ShowOnlyUnreadMsgs; // Show only unread messages (this option is applicable only for received messages)
long ExpandedMsgCod; // The current expanded message code
struct
diff --git a/swad_hierarchy.h b/swad_hierarchy.h
index bcf0cd03..9d0f11e2 100644
--- a/swad_hierarchy.h
+++ b/swad_hierarchy.h
@@ -31,9 +31,6 @@
/***************************** Public constants ******************************/
/*****************************************************************************/
-#define Hie_MAX_LENGTH_LOCATION_SHORT_NAME 32
-#define Hie_MAX_LENGTH_LOCATION_SHORT_NAME_SPEC_CHAR (Hie_MAX_LENGTH_LOCATION_SHORT_NAME * Str_MAX_LENGTH_SPEC_CHAR_HTML)
-
/*****************************************************************************/
/******************************* Public types ********************************/
/*****************************************************************************/
diff --git a/swad_holiday.c b/swad_holiday.c
index 9a183d59..ec225267 100644
--- a/swad_holiday.c
+++ b/swad_holiday.c
@@ -310,7 +310,7 @@ void Hld_GetListHolidays (void)
/* Get the full name of the place (row[2]) */
Str_Copy (Hld->PlaceFullName,row[2],
- Plc_MAX_LENGTH_PLACE_FULL_NAME);
+ Plc_MAX_BYTES_PLACE_FULL_NAME);
/* Get type (row[3]) */
Hld->HldTyp = Hld_GetTypeOfHoliday (row[3]);
@@ -335,7 +335,7 @@ void Hld_GetListHolidays (void)
/* Get the name of the holiday/non school period (row[6]) */
Str_Copy (Hld->Name,row[6],
- Hld_MAX_LENGTH_HOLIDAY_NAME);
+ Hld_MAX_BYTES_HOLIDAY_NAME);
}
}
@@ -402,7 +402,7 @@ static void Hld_GetDataOfHolidayByCod (struct Holiday *Hld)
/* Get the full name of the place (row[1]) */
Str_Copy (Hld->PlaceFullName,row[1],
- Plc_MAX_LENGTH_PLACE_FULL_NAME);
+ Plc_MAX_BYTES_PLACE_FULL_NAME);
/* Get type (row[2]) */
Hld->HldTyp = Hld_GetTypeOfHoliday (row[2]);
@@ -427,7 +427,7 @@ static void Hld_GetDataOfHolidayByCod (struct Holiday *Hld)
/* Get the name of the holiday/non school period (row[5]) */
Str_Copy (Hld->Name,row[5],
- Hld_MAX_LENGTH_HOLIDAY_NAME);
+ Hld_MAX_BYTES_HOLIDAY_NAME);
}
/***** Free structure that stores the query result *****/
@@ -596,7 +596,7 @@ static void Hld_ListHolidaysForEdition (void)
fprintf (Gbl.F.Out,"
",
- Hld_MAX_LENGTH_HOLIDAY_NAME,Hld->Name,Gbl.Form.Id);
+ Hld_MAX_CHARS_HOLIDAY_NAME,Hld->Name,Gbl.Form.Id);
Act_FormEnd ();
fprintf (Gbl.F.Out,""
"");
@@ -694,7 +694,7 @@ void Hld_ChangeHolidayPlace (void)
/***** Show the form again *****/
Hld->PlcCod = NewPlace.PlcCod;
Str_Copy (Hld->PlaceFullName,NewPlace.FullName,
- Plc_MAX_LENGTH_PLACE_FULL_NAME);
+ Plc_MAX_BYTES_PLACE_FULL_NAME);
Hld_EditHolidays ();
}
@@ -842,7 +842,7 @@ void Hld_RenameHoliday (void)
extern const char *Txt_The_name_of_the_holiday_X_has_not_changed;
char Query[512];
struct Holiday *Hld;
- char NewHldName[Hld_MAX_LENGTH_HOLIDAY_NAME + 1];
+ char NewHldName[Hld_MAX_BYTES_HOLIDAY_NAME + 1];
Hld = &Gbl.Hlds.EditingHld;
@@ -852,7 +852,7 @@ void Hld_RenameHoliday (void)
Lay_ShowErrorAndExit ("Code of holiday is missing.");
/* Get the new name for the holiday */
- Par_GetParToText ("Name",NewHldName,Hld_MAX_LENGTH_HOLIDAY_NAME);
+ Par_GetParToText ("Name",NewHldName,Hld_MAX_BYTES_HOLIDAY_NAME);
/***** Get from the database the old names of the holiday *****/
Hld_GetDataOfHolidayByCod (Hld);
@@ -890,7 +890,7 @@ void Hld_RenameHoliday (void)
/***** Show the form again *****/
Str_Copy (Hld->Name,NewHldName,
- Hld_MAX_LENGTH_HOLIDAY_NAME);
+ Hld_MAX_BYTES_HOLIDAY_NAME);
Hld_EditHolidays ();
}
@@ -1005,7 +1005,7 @@ static void Hld_PutFormToCreateHoliday (void)
""
"
"
"",
- Hld_MAX_LENGTH_HOLIDAY_NAME,Hld->Name);
+ Hld_MAX_CHARS_HOLIDAY_NAME,Hld->Name);
/***** Send button and end of frame *****/
Lay_EndRoundFrameTableWithButton (Lay_CREATE_BUTTON,Txt_Create_holiday);
@@ -1099,7 +1099,7 @@ void Hld_RecFormNewHoliday (void)
}
/***** Get holiday name *****/
- Par_GetParToText ("Name",Hld->Name,Hld_MAX_LENGTH_HOLIDAY_NAME);
+ Par_GetParToText ("Name",Hld->Name,Hld_MAX_BYTES_HOLIDAY_NAME);
/***** Create the new holiday or write warning message *****/
if (Hld->Name[0]) // If there's a holiday name
diff --git a/swad_holiday.h b/swad_holiday.h
index 4e86d958..621bbf8a 100644
--- a/swad_holiday.h
+++ b/swad_holiday.h
@@ -34,7 +34,8 @@
/************************** Public types and constants ***********************/
/*****************************************************************************/
-#define Hld_MAX_LENGTH_HOLIDAY_NAME 127
+#define Hld_MAX_CHARS_HOLIDAY_NAME (128 - 1)
+#define Hld_MAX_BYTES_HOLIDAY_NAME (Hld_MAX_CHARS_HOLIDAY_NAME * Str_MAX_BYTES_PER_CHAR)
#define Hld_NUM_TYPES_HOLIDAY 2
typedef enum
@@ -54,11 +55,11 @@ struct Holiday
{
long HldCod;
long PlcCod;
- char PlaceFullName[Plc_MAX_LENGTH_PLACE_FULL_NAME + 1];
+ char PlaceFullName[Plc_MAX_BYTES_PLACE_FULL_NAME + 1];
Hld_HolidayType_t HldTyp;
struct Date StartDate;
struct Date EndDate;
- char Name[Hld_MAX_LENGTH_HOLIDAY_NAME + 1];
+ char Name[Hld_MAX_BYTES_HOLIDAY_NAME + 1];
};
#define Hld_NUM_ORDERS 2
diff --git a/swad_image.c b/swad_image.c
index 41f4d6b4..c1536904 100644
--- a/swad_image.c
+++ b/swad_image.c
@@ -351,13 +351,13 @@ void Img_SetParamNames (struct ParamUploadImg *ParamUploadImg,int NumImgInForm)
if (NumImgInForm < 0) // One unique image in form ==> no suffix needed
{
Str_Copy (ParamUploadImg->Action,"ImgAct",
- Img_MAX_LENGTH_PARAM_UPLOAD_IMG);
+ Img_MAX_BYTES_PARAM_UPLOAD_IMG);
Str_Copy (ParamUploadImg->File ,"ImgFil",
- Img_MAX_LENGTH_PARAM_UPLOAD_IMG);
+ Img_MAX_BYTES_PARAM_UPLOAD_IMG);
Str_Copy (ParamUploadImg->Title ,"ImgTit",
- Img_MAX_LENGTH_PARAM_UPLOAD_IMG);
+ Img_MAX_BYTES_PARAM_UPLOAD_IMG);
Str_Copy (ParamUploadImg->URL ,"ImgURL",
- Img_MAX_LENGTH_PARAM_UPLOAD_IMG);
+ Img_MAX_BYTES_PARAM_UPLOAD_IMG);
}
else // Several images in form ==> add suffix
{
diff --git a/swad_image.h b/swad_image.h
index 9fe39a94..4fa811e7 100644
--- a/swad_image.h
+++ b/swad_image.h
@@ -100,13 +100,13 @@ struct Image
};
/***** Parameters used in a form to upload an image *****/
-#define Img_MAX_LENGTH_PARAM_UPLOAD_IMG (16 - 1)
+#define Img_MAX_BYTES_PARAM_UPLOAD_IMG (16 - 1)
struct ParamUploadImg
{
- char Action[Img_MAX_LENGTH_PARAM_UPLOAD_IMG + 1];
- char File [Img_MAX_LENGTH_PARAM_UPLOAD_IMG + 1];
- char Title [Img_MAX_LENGTH_PARAM_UPLOAD_IMG + 1];
- char URL [Img_MAX_LENGTH_PARAM_UPLOAD_IMG + 1];
+ char Action[Img_MAX_BYTES_PARAM_UPLOAD_IMG + 1];
+ char File [Img_MAX_BYTES_PARAM_UPLOAD_IMG + 1];
+ char Title [Img_MAX_BYTES_PARAM_UPLOAD_IMG + 1];
+ char URL [Img_MAX_BYTES_PARAM_UPLOAD_IMG + 1];
};
/*****************************************************************************/
diff --git a/swad_institution.c b/swad_institution.c
index ad2f4fe4..3b2ec69c 100644
--- a/swad_institution.c
+++ b/swad_institution.c
@@ -385,7 +385,7 @@ static void Ins_Configuration (bool PrintView)
" maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_FULL_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />",
- Ins_MAX_LENGTH_INSTIT_FULL_NAME,
+ Ins_MAX_CHARS_INSTIT_FULL_NAME,
Gbl.CurrentIns.Ins.FullName,
Gbl.Form.Id);
Act_FormEnd ();
@@ -414,7 +414,7 @@ static void Ins_Configuration (bool PrintView)
" maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />",
- Ins_MAX_LENGTH_INSTIT_SHRT_NAME,
+ Ins_MAX_CHARS_INSTIT_SHRT_NAME,
Gbl.CurrentIns.Ins.ShrtName,
Gbl.Form.Id);
Act_FormEnd ();
@@ -1030,11 +1030,11 @@ void Ins_GetListInstitutions (long CtyCod,Ins_GetExtraData_t GetExtraData)
/* Get the short name of the institution (row[4]) */
Str_Copy (Ins->ShrtName,row[4],
- Ins_MAX_LENGTH_INSTIT_SHRT_NAME);
+ Ins_MAX_BYTES_INSTIT_SHRT_NAME);
/* Get the full name of the institution (row[5]) */
Str_Copy (Ins->FullName,row[5],
- Ins_MAX_LENGTH_INSTIT_FULL_NAME);
+ Ins_MAX_BYTES_INSTIT_FULL_NAME);
/* Get the URL of the institution (row[6]) */
Str_Copy (Ins->WWW,row[6],
@@ -1145,11 +1145,11 @@ bool Ins_GetDataOfInstitutionByCod (struct Instit *Ins,
/* Get the short name of the institution (row[3]) */
Str_Copy (Ins->ShrtName,row[3],
- Ins_MAX_LENGTH_INSTIT_SHRT_NAME);
+ Ins_MAX_BYTES_INSTIT_SHRT_NAME);
/* Get the full name of the institution (row[4]) */
Str_Copy (Ins->FullName,row[4],
- Ins_MAX_LENGTH_INSTIT_FULL_NAME);
+ Ins_MAX_BYTES_INSTIT_FULL_NAME);
/* Get the URL of the institution (row[5]) */
Str_Copy (Ins->WWW,row[5],
@@ -1194,7 +1194,7 @@ void Ins_GetShortNameOfInstitutionByCod (struct Instit *Ins)
static struct
{
long InsCod;
- char ShrtName[Ins_MAX_LENGTH_INSTIT_SHRT_NAME + 1];
+ char ShrtName[Ins_MAX_BYTES_INSTIT_SHRT_NAME + 1];
} Cached =
{
-1L,
@@ -1217,7 +1217,7 @@ void Ins_GetShortNameOfInstitutionByCod (struct Instit *Ins)
row = mysql_fetch_row (mysql_res);
Str_Copy (Cached.ShrtName,row[0],
- Ins_MAX_LENGTH_INSTIT_SHRT_NAME);
+ Ins_MAX_BYTES_INSTIT_SHRT_NAME);
}
else
Cached.ShrtName[0] = '\0';
@@ -1227,7 +1227,7 @@ void Ins_GetShortNameOfInstitutionByCod (struct Instit *Ins)
}
Str_Copy (Ins->ShrtName,Cached.ShrtName,
- Ins_MAX_LENGTH_INSTIT_SHRT_NAME);
+ Ins_MAX_BYTES_INSTIT_SHRT_NAME);
}
}
@@ -1245,7 +1245,7 @@ static void Ins_GetFullNameAndCtyOfInstitutionByCod (struct Instit *Ins,
static struct
{
long InsCod;
- char FullName[Ins_MAX_LENGTH_INSTIT_FULL_NAME + 1];
+ char FullName[Ins_MAX_BYTES_INSTIT_FULL_NAME + 1];
char CtyName[Cty_MAX_BYTES_COUNTRY_NAME + 1];
} Cached =
{
@@ -1276,7 +1276,7 @@ static void Ins_GetFullNameAndCtyOfInstitutionByCod (struct Instit *Ins,
/* Get the full name of this institution (row[0]) */
Str_Copy (Cached.FullName,row[0],
- Ins_MAX_LENGTH_INSTIT_FULL_NAME);
+ Ins_MAX_BYTES_INSTIT_FULL_NAME);
/* Get the name of the country (row[1]) */
Str_Copy (Cached.CtyName,row[1],
@@ -1293,7 +1293,7 @@ static void Ins_GetFullNameAndCtyOfInstitutionByCod (struct Instit *Ins,
}
Str_Copy (Ins->FullName,Cached.FullName,
- Ins_MAX_LENGTH_INSTIT_FULL_NAME);
+ Ins_MAX_BYTES_INSTIT_FULL_NAME);
Str_Copy (CtyName,Cached.CtyName,
Cty_MAX_BYTES_COUNTRY_NAME);
}
@@ -1453,7 +1453,7 @@ static void Ins_ListInstitutionsForEdition (void)
" maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />",
- Ins_MAX_LENGTH_INSTIT_SHRT_NAME,Ins->ShrtName,
+ Ins_MAX_CHARS_INSTIT_SHRT_NAME,Ins->ShrtName,
Gbl.Form.Id);
Act_FormEnd ();
}
@@ -1471,7 +1471,7 @@ static void Ins_ListInstitutionsForEdition (void)
" maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_FULL_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />",
- Ins_MAX_LENGTH_INSTIT_FULL_NAME,
+ Ins_MAX_CHARS_INSTIT_FULL_NAME,
Ins->FullName,
Gbl.Form.Id);
Act_FormEnd ();
@@ -1765,28 +1765,28 @@ static void Ins_RenameInstitution (struct Instit *Ins,Cns_ShrtOrFullName_t ShrtO
extern const char *Txt_The_name_of_the_institution_X_has_not_changed;
const char *ParamName = NULL; // Initialized to avoid warning
const char *FieldName = NULL; // Initialized to avoid warning
- unsigned MaxLength = 0; // Initialized to avoid warning
+ unsigned MaxBytes = 0; // Initialized to avoid warning
char *CurrentInsName = NULL; // Initialized to avoid warning
- char NewInsName[Ins_MAX_LENGTH_INSTIT_FULL_NAME + 1];
+ char NewInsName[Ins_MAX_BYTES_INSTIT_FULL_NAME + 1];
switch (ShrtOrFullName)
{
case Cns_SHRT_NAME:
ParamName = "ShortName";
FieldName = "ShortName";
- MaxLength = Ins_MAX_LENGTH_INSTIT_SHRT_NAME;
+ MaxBytes = Ins_MAX_BYTES_INSTIT_SHRT_NAME;
CurrentInsName = Ins->ShrtName;
break;
case Cns_FULL_NAME:
ParamName = "FullName";
FieldName = "FullName";
- MaxLength = Ins_MAX_LENGTH_INSTIT_FULL_NAME;
+ MaxBytes = Ins_MAX_BYTES_INSTIT_FULL_NAME;
CurrentInsName = Ins->FullName;
break;
}
/***** Get the new name for the institution from form *****/
- Par_GetParToText (ParamName,NewInsName,MaxLength);
+ Par_GetParToText (ParamName,NewInsName,MaxBytes);
/***** Get from the database the old names of the institution *****/
Ins_GetDataOfInstitutionByCod (Ins,Ins_GET_BASIC_DATA);
@@ -1820,7 +1820,7 @@ static void Ins_RenameInstitution (struct Instit *Ins,Cns_ShrtOrFullName_t ShrtO
CurrentInsName,NewInsName);
/* Change current institution name in order to display it properly */
- Str_Copy (CurrentInsName,NewInsName,MaxLength);
+ Str_Copy (CurrentInsName,NewInsName,MaxBytes);
}
}
else // The same name
@@ -1835,7 +1835,7 @@ static void Ins_RenameInstitution (struct Instit *Ins,Cns_ShrtOrFullName_t ShrtO
static bool Ins_CheckIfInsNameExistsInCty (const char *FieldName,const char *Name,long InsCod,long CtyCod)
{
- char Query[256 + Ins_MAX_LENGTH_INSTIT_FULL_NAME];
+ char Query[256 + Ins_MAX_BYTES_INSTIT_FULL_NAME];
/***** Get number of institutions in current country with a name from database *****/
sprintf (Query,"SELECT COUNT(*) FROM institutions"
@@ -1850,7 +1850,7 @@ static bool Ins_CheckIfInsNameExistsInCty (const char *FieldName,const char *Nam
static void Ins_UpdateInsNameDB (long InsCod,const char *FieldName,const char *NewInsName)
{
- char Query[128 + Ins_MAX_LENGTH_INSTIT_FULL_NAME];
+ char Query[128 + Ins_MAX_BYTES_INSTIT_FULL_NAME];
/***** Update institution changing old name by new name */
sprintf (Query,"UPDATE institutions SET %s='%s' WHERE InsCod='%ld'",
@@ -2196,7 +2196,7 @@ static void Ins_PutFormToCreateInstitution (void)
" class=\"INPUT_SHORT_NAME\""
" required=\"required\" />"
"",
- Ins_MAX_LENGTH_INSTIT_SHRT_NAME,Ins->ShrtName);
+ Ins_MAX_CHARS_INSTIT_SHRT_NAME,Ins->ShrtName);
/***** Institution full name *****/
fprintf (Gbl.F.Out,"
"
@@ -2205,7 +2205,7 @@ static void Ins_PutFormToCreateInstitution (void)
" class=\"INPUT_FULL_NAME\""
" required=\"required\" />"
" ",
- Ins_MAX_LENGTH_INSTIT_FULL_NAME,Ins->FullName);
+ Ins_MAX_CHARS_INSTIT_FULL_NAME,Ins->FullName);
/***** Institution WWW *****/
fprintf (Gbl.F.Out,"
"
@@ -2349,10 +2349,10 @@ static void Ins_RecFormRequestOrCreateIns (unsigned Status)
Ins->CtyCod = Gbl.CurrentCty.Cty.CtyCod;
/* Get institution short name */
- Par_GetParToText ("ShortName",Ins->ShrtName,Ins_MAX_LENGTH_INSTIT_SHRT_NAME);
+ Par_GetParToText ("ShortName",Ins->ShrtName,Ins_MAX_BYTES_INSTIT_SHRT_NAME);
/* Get institution full name */
- Par_GetParToText ("FullName",Ins->FullName,Ins_MAX_LENGTH_INSTIT_FULL_NAME);
+ Par_GetParToText ("FullName",Ins->FullName,Ins_MAX_BYTES_INSTIT_FULL_NAME);
/* Get institution WWW */
Par_GetParToText ("WWW",Ins->WWW,Cns_MAX_BYTES_WWW);
@@ -2395,8 +2395,8 @@ static void Ins_CreateInstitution (struct Instit *Ins,unsigned Status)
{
extern const char *Txt_Created_new_institution_X;
char Query[512 +
- Ins_MAX_LENGTH_INSTIT_SHRT_NAME +
- Ins_MAX_LENGTH_INSTIT_FULL_NAME +
+ Ins_MAX_BYTES_INSTIT_SHRT_NAME +
+ Ins_MAX_BYTES_INSTIT_FULL_NAME +
Cns_MAX_BYTES_WWW];
/***** Create a new institution *****/
diff --git a/swad_institution.h b/swad_institution.h
index f5ce38b0..0a391a0e 100644
--- a/swad_institution.h
+++ b/swad_institution.h
@@ -55,8 +55,11 @@ typedef enum
#define Ins_MAX_INSTITS_PER_USR 10 // Used in list of my institutions
-#define Ins_MAX_LENGTH_INSTIT_SHRT_NAME 32
-#define Ins_MAX_LENGTH_INSTIT_FULL_NAME 1024
+#define Ins_MAX_CHARS_INSTIT_SHRT_NAME 32
+#define Ins_MAX_BYTES_INSTIT_SHRT_NAME (Ins_MAX_CHARS_INSTIT_SHRT_NAME * Str_MAX_BYTES_PER_CHAR)
+
+#define Ins_MAX_CHARS_INSTIT_FULL_NAME (128 - 1)
+#define Ins_MAX_BYTES_INSTIT_FULL_NAME (Ins_MAX_CHARS_INSTIT_FULL_NAME * Str_MAX_BYTES_PER_CHAR)
struct Instit
{
@@ -64,8 +67,8 @@ struct Instit
long CtyCod;
Ins_Status_t Status; // Institution status
long RequesterUsrCod; // User code of the person who requested the creation of this institution
- char ShrtName[Ins_MAX_LENGTH_INSTIT_SHRT_NAME + 1];
- char FullName[Ins_MAX_LENGTH_INSTIT_FULL_NAME + 1];
+ char ShrtName[Ins_MAX_BYTES_INSTIT_SHRT_NAME + 1];
+ char FullName[Ins_MAX_BYTES_INSTIT_FULL_NAME + 1];
char WWW[Cns_MAX_BYTES_WWW + 1];
unsigned NumUsrsWhoClaimToBelongToIns;
unsigned NumCtrs;
diff --git a/swad_link.c b/swad_link.c
index 51517ada..3252459b 100644
--- a/swad_link.c
+++ b/swad_link.c
@@ -233,11 +233,11 @@ void Lnk_GetListLinks (void)
/* Get the short name of the link (row[1]) */
Str_Copy (Lnk->ShrtName,row[1],
- Lnk_MAX_LENGTH_LINK_SHRT_NAME);
+ Lnk_MAX_BYTES_LINK_SHRT_NAME);
/* Get the full name of the link (row[2]) */
Str_Copy (Lnk->FullName,row[2],
- Lnk_MAX_LENGTH_LINK_FULL_NAME);
+ Lnk_MAX_BYTES_LINK_FULL_NAME);
/* Get the URL of the link (row[3]) */
Str_Copy (Lnk->WWW,row[3],
@@ -281,11 +281,11 @@ void Lnk_GetDataOfLinkByCod (struct Link *Lnk)
/* Get the short name of the link (row[0]) */
Str_Copy (Lnk->ShrtName,row[0],
- Lnk_MAX_LENGTH_LINK_SHRT_NAME);
+ Lnk_MAX_BYTES_LINK_SHRT_NAME);
/* Get the full name of the link (row[1]) */
Str_Copy (Lnk->FullName,row[1],
- Lnk_MAX_LENGTH_LINK_FULL_NAME);
+ Lnk_MAX_BYTES_LINK_FULL_NAME);
/* Get the URL of the link (row[2]) */
Str_Copy (Lnk->WWW,row[2],
@@ -358,7 +358,7 @@ static void Lnk_ListLinksForEdition (void)
" maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />",
- Lnk_MAX_LENGTH_LINK_SHRT_NAME,Lnk->ShrtName,
+ Lnk_MAX_CHARS_LINK_SHRT_NAME,Lnk->ShrtName,
Gbl.Form.Id);
Act_FormEnd ();
fprintf (Gbl.F.Out," ");
@@ -371,7 +371,7 @@ static void Lnk_ListLinksForEdition (void)
" maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_FULL_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />",
- Lnk_MAX_LENGTH_LINK_FULL_NAME,Lnk->FullName,
+ Lnk_MAX_CHARS_LINK_FULL_NAME,Lnk->FullName,
Gbl.Form.Id);
Act_FormEnd ();
fprintf (Gbl.F.Out,"");
@@ -475,9 +475,9 @@ static void Lnk_RenameLink (Cns_ShrtOrFullName_t ShrtOrFullName)
struct Link *Lnk;
const char *ParamName = NULL; // Initialized to avoid warning
const char *FieldName = NULL; // Initialized to avoid warning
- unsigned MaxLength = 0; // Initialized to avoid warning
+ unsigned MaxBytes = 0; // Initialized to avoid warning
char *CurrentLnkName = NULL; // Initialized to avoid warning
- char NewLnkName[Lnk_MAX_LENGTH_LINK_FULL_NAME + 1];
+ char NewLnkName[Lnk_MAX_BYTES_LINK_FULL_NAME + 1];
Lnk = &Gbl.Links.EditingLnk;
switch (ShrtOrFullName)
@@ -485,13 +485,13 @@ static void Lnk_RenameLink (Cns_ShrtOrFullName_t ShrtOrFullName)
case Cns_SHRT_NAME:
ParamName = "ShortName";
FieldName = "ShortName";
- MaxLength = Lnk_MAX_LENGTH_LINK_SHRT_NAME;
+ MaxBytes = Lnk_MAX_BYTES_LINK_SHRT_NAME;
CurrentLnkName = Lnk->ShrtName;
break;
case Cns_FULL_NAME:
ParamName = "FullName";
FieldName = "FullName";
- MaxLength = Lnk_MAX_LENGTH_LINK_FULL_NAME;
+ MaxBytes = Lnk_MAX_BYTES_LINK_FULL_NAME;
CurrentLnkName = Lnk->FullName;
break;
}
@@ -502,7 +502,7 @@ static void Lnk_RenameLink (Cns_ShrtOrFullName_t ShrtOrFullName)
Lay_ShowErrorAndExit ("Code of institutional link is missing.");
/* Get the new name for the link */
- Par_GetParToText (ParamName,NewLnkName,MaxLength);
+ Par_GetParToText (ParamName,NewLnkName,MaxBytes);
/***** Get from the database the old names of the link *****/
Lnk_GetDataOfLinkByCod (Lnk);
@@ -549,7 +549,7 @@ static void Lnk_RenameLink (Cns_ShrtOrFullName_t ShrtOrFullName)
/***** Show the form again *****/
Str_Copy (CurrentLnkName,NewLnkName,
- MaxLength);
+ MaxBytes);
Lnk_EditLinks ();
}
@@ -645,7 +645,7 @@ static void Lnk_PutFormToCreateLink (void)
" class=\"INPUT_SHORT_NAME\""
" required=\"required\" />"
"",
- Lnk_MAX_LENGTH_LINK_SHRT_NAME,Lnk->ShrtName);
+ Lnk_MAX_CHARS_LINK_SHRT_NAME,Lnk->ShrtName);
/***** Link full name *****/
fprintf (Gbl.F.Out,"
"
@@ -654,7 +654,7 @@ static void Lnk_PutFormToCreateLink (void)
" class=\"INPUT_FULL_NAME\""
" required=\"required\" />"
" ",
- Lnk_MAX_LENGTH_LINK_FULL_NAME,Lnk->FullName);
+ Lnk_MAX_CHARS_LINK_FULL_NAME,Lnk->FullName);
/***** Link WWW *****/
fprintf (Gbl.F.Out,"
"
@@ -720,10 +720,10 @@ void Lnk_RecFormNewLink (void)
/***** Get parameters from form *****/
/* Get link short name */
- Par_GetParToText ("ShortName",Lnk->ShrtName,Lnk_MAX_LENGTH_LINK_SHRT_NAME);
+ Par_GetParToText ("ShortName",Lnk->ShrtName,Lnk_MAX_BYTES_LINK_SHRT_NAME);
/* Get link full name */
- Par_GetParToText ("FullName",Lnk->FullName,Lnk_MAX_LENGTH_LINK_FULL_NAME);
+ Par_GetParToText ("FullName",Lnk->FullName,Lnk_MAX_BYTES_LINK_FULL_NAME);
/* Get link URL */
Par_GetParToText ("WWW",Lnk->WWW,Cns_MAX_BYTES_WWW);
diff --git a/swad_link.h b/swad_link.h
index cddfbaa3..326cb1a4 100644
--- a/swad_link.h
+++ b/swad_link.h
@@ -31,14 +31,17 @@
/************************** Public types and constants ***********************/
/*****************************************************************************/
-#define Lnk_MAX_LENGTH_LINK_SHRT_NAME 32
-#define Lnk_MAX_LENGTH_LINK_FULL_NAME 127
+#define Lnk_MAX_CHARS_LINK_SHRT_NAME 32
+#define Lnk_MAX_BYTES_LINK_SHRT_NAME (Lnk_MAX_CHARS_LINK_SHRT_NAME * Str_MAX_BYTES_PER_CHAR)
+
+#define Lnk_MAX_CHARS_LINK_FULL_NAME (128 - 1)
+#define Lnk_MAX_BYTES_LINK_FULL_NAME (Lnk_MAX_CHARS_LINK_FULL_NAME * Str_MAX_BYTES_PER_CHAR)
struct Link
{
long LnkCod;
- char ShrtName[Lnk_MAX_LENGTH_LINK_SHRT_NAME + 1];
- char FullName[Lnk_MAX_LENGTH_LINK_FULL_NAME + 1];
+ char ShrtName[Lnk_MAX_BYTES_LINK_SHRT_NAME + 1];
+ char FullName[Lnk_MAX_BYTES_LINK_FULL_NAME + 1];
char WWW[Cns_MAX_BYTES_WWW + 1];
};
diff --git a/swad_mail.c b/swad_mail.c
index aeaba2e3..d5a4cce7 100644
--- a/swad_mail.c
+++ b/swad_mail.c
@@ -67,8 +67,8 @@ extern struct Globals Gbl;
static void Mai_GetParamMaiOrder (void);
static void Mai_PutIconToEditMailDomains (void);
static void Mai_GetListMailDomainsAllowedForNotif (void);
-static void Mai_GetMailDomain (const char *Email,char MailDomain[Mai_MAX_LENGTH_MAIL_DOMAIN + 1]);
-static bool Mai_CheckIfMailDomainIsAllowedForNotif (const char MailDomain[Mai_MAX_LENGTH_MAIL_DOMAIN + 1]);
+static void Mai_GetMailDomain (const char *Email,char MailDomain[Mai_MAX_BYTES_MAIL_DOMAIN + 1]);
+static bool Mai_CheckIfMailDomainIsAllowedForNotif (const char MailDomain[Mai_MAX_BYTES_MAIL_DOMAIN + 1]);
static void Mai_ListMailDomainsForEdition (void);
static void Mai_PutParamMaiCod (long MaiCod);
@@ -288,11 +288,11 @@ static void Mai_GetListMailDomainsAllowedForNotif (void)
/* Get the mail domain (row[1]) */
Str_Copy (Mai->Domain,row[1],
- Mai_MAX_LENGTH_MAIL_DOMAIN);
+ Mai_MAX_BYTES_MAIL_DOMAIN);
/* Get the mail domain info (row[2]) */
Str_Copy (Mai->Info,row[2],
- Mai_MAX_LENGTH_MAIL_INFO);
+ Mai_MAX_BYTES_MAIL_INFO);
/* Get number of users (row[3]) */
if (sscanf (row[3],"%u",&(Mai->NumUsrs)) != 1)
@@ -317,7 +317,7 @@ static void Mai_GetListMailDomainsAllowedForNotif (void)
bool Mai_CheckIfUsrCanReceiveEmailNotif (const struct UsrData *UsrDat)
{
- char MailDomain[Mai_MAX_LENGTH_MAIL_DOMAIN + 1];
+ char MailDomain[Mai_MAX_BYTES_MAIL_DOMAIN + 1];
/***** Check #1: is my email address confirmed? *****/
if (!UsrDat->EmailConfirmed)
@@ -332,7 +332,7 @@ bool Mai_CheckIfUsrCanReceiveEmailNotif (const struct UsrData *UsrDat)
/********************** Get mailbox from email address ***********************/
/*****************************************************************************/
-static void Mai_GetMailDomain (const char *Email,char MailDomain[Mai_MAX_LENGTH_MAIL_DOMAIN + 1])
+static void Mai_GetMailDomain (const char *Email,char MailDomain[Mai_MAX_BYTES_MAIL_DOMAIN + 1])
{
const char *Ptr;
@@ -344,7 +344,7 @@ static void Mai_GetMailDomain (const char *Email,char MailDomain[Mai_MAX_LENGTH_
Ptr++; // Skip '@'
if (strchr (Ptr,(int) '@') == NULL) // No more '@' found
Str_Copy (MailDomain,Ptr,
- Mai_MAX_LENGTH_MAIL_DOMAIN);
+ Mai_MAX_BYTES_MAIL_DOMAIN);
}
}
@@ -352,7 +352,7 @@ static void Mai_GetMailDomain (const char *Email,char MailDomain[Mai_MAX_LENGTH_
/************ Check if a mail domain is allowed for notifications ************/
/*****************************************************************************/
-static bool Mai_CheckIfMailDomainIsAllowedForNotif (const char MailDomain[Mai_MAX_LENGTH_MAIL_DOMAIN + 1])
+static bool Mai_CheckIfMailDomainIsAllowedForNotif (const char MailDomain[Mai_MAX_BYTES_MAIL_DOMAIN + 1])
{
char Query[512];
@@ -414,11 +414,11 @@ void Mai_GetDataOfMailDomainByCod (struct Mail *Mai)
/* Get the short name of the mail (row[0]) */
Str_Copy (Mai->Domain,row[0],
- Mai_MAX_LENGTH_MAIL_DOMAIN);
+ Mai_MAX_BYTES_MAIL_DOMAIN);
/* Get the full name of the mail (row[1]) */
Str_Copy (Mai->Info,row[1],
- Mai_MAX_LENGTH_MAIL_INFO);
+ Mai_MAX_BYTES_MAIL_INFO);
}
/***** Free structure that stores the query result *****/
@@ -487,7 +487,7 @@ static void Mai_ListMailDomainsForEdition (void)
fprintf (Gbl.F.Out," ",
- Mai_MAX_LENGTH_MAIL_DOMAIN,Mai->Domain,
+ Mai_MAX_CHARS_MAIL_DOMAIN,Mai->Domain,
Gbl.Form.Id);
Act_FormEnd ();
fprintf (Gbl.F.Out," ");
@@ -499,7 +499,7 @@ static void Mai_ListMailDomainsForEdition (void)
fprintf (Gbl.F.Out,"
",
- Mai_MAX_LENGTH_MAIL_INFO,Mai->Info,
+ Mai_MAX_CHARS_MAIL_INFO,Mai->Info,
Gbl.Form.Id);
Act_FormEnd ();
fprintf (Gbl.F.Out,"");
@@ -596,9 +596,9 @@ static void Mai_RenameMailDomain (Cns_ShrtOrFullName_t ShrtOrFullName)
struct Mail *Mai;
const char *ParamName = NULL; // Initialized to avoid warning
const char *FieldName = NULL; // Initialized to avoid warning
- unsigned MaxLength = 0; // Initialized to avoid warning
+ unsigned MaxBytes = 0; // Initialized to avoid warning
char *CurrentMaiName = NULL; // Initialized to avoid warning
- char NewMaiName[Mai_MAX_LENGTH_MAIL_INFO + 1];
+ char NewMaiName[Mai_MAX_BYTES_MAIL_INFO + 1];
Mai = &Gbl.Mails.EditingMai;
switch (ShrtOrFullName)
@@ -606,13 +606,13 @@ static void Mai_RenameMailDomain (Cns_ShrtOrFullName_t ShrtOrFullName)
case Cns_SHRT_NAME:
ParamName = "Domain";
FieldName = "Domain";
- MaxLength = Mai_MAX_LENGTH_MAIL_DOMAIN;
+ MaxBytes = Mai_MAX_BYTES_MAIL_DOMAIN;
CurrentMaiName = Mai->Domain;
break;
case Cns_FULL_NAME:
ParamName = "Info";
FieldName = "Info";
- MaxLength = Mai_MAX_LENGTH_MAIL_INFO;
+ MaxBytes = Mai_MAX_BYTES_MAIL_INFO;
CurrentMaiName = Mai->Info;
break;
}
@@ -623,7 +623,7 @@ static void Mai_RenameMailDomain (Cns_ShrtOrFullName_t ShrtOrFullName)
Lay_ShowErrorAndExit ("Code of mail domain is missing.");
/* Get the new name for the mail */
- Par_GetParToText (ParamName,NewMaiName,MaxLength);
+ Par_GetParToText (ParamName,NewMaiName,MaxBytes);
/***** Get from the database the old names of the mail *****/
Mai_GetDataOfMailDomainByCod (Mai);
@@ -670,7 +670,7 @@ static void Mai_RenameMailDomain (Cns_ShrtOrFullName_t ShrtOrFullName)
/***** Show the form again *****/
Str_Copy (CurrentMaiName,NewMaiName,
- MaxLength);
+ MaxBytes);
Mai_EditMailDomains ();
}
@@ -728,7 +728,7 @@ static void Mai_PutFormToCreateMailDomain (void)
" size=\"15\" maxlength=\"%u\" value=\"%s\""
" required=\"required\" />"
"",
- Mai_MAX_LENGTH_MAIL_DOMAIN,Mai->Domain);
+ Mai_MAX_CHARS_MAIL_DOMAIN,Mai->Domain);
/***** Mail domain info *****/
fprintf (Gbl.F.Out,"
"
@@ -738,7 +738,7 @@ static void Mai_PutFormToCreateMailDomain (void)
" "
"
"
"",
- Mai_MAX_LENGTH_MAIL_INFO,Mai->Info);
+ Mai_MAX_CHARS_MAIL_INFO,Mai->Info);
/***** Send button and end frame *****/
@@ -792,10 +792,10 @@ void Mai_RecFormNewMailDomain (void)
/***** Get parameters from form *****/
/* Get mail short name */
- Par_GetParToText ("Domain",Mai->Domain,Mai_MAX_LENGTH_MAIL_DOMAIN);
+ Par_GetParToText ("Domain",Mai->Domain,Mai_MAX_BYTES_MAIL_DOMAIN);
/* Get mail full name */
- Par_GetParToText ("Info",Mai->Info,Mai_MAX_LENGTH_MAIL_INFO);
+ Par_GetParToText ("Info",Mai->Info,Mai_MAX_BYTES_MAIL_INFO);
if (Mai->Domain[0] && Mai->Info[0]) // If there's a mail name
{
@@ -846,7 +846,7 @@ static void Mai_CreateMailDomain (struct Mail *Mai)
/****** List the emails of all the students to creates an email message ******/
/*****************************************************************************/
-#define Mai_MAX_LENGTH_STR_ADDR (32 * 5000)
+#define Mai_MAX_BYTES_STR_ADDR (256 * 1024 - 1)
void Mai_ListEmails (void)
{
@@ -859,7 +859,7 @@ void Mai_ListEmails (void)
unsigned NumUsr;
unsigned NumStdsWithEmail;
unsigned NumAcceptedStdsWithEmail;
- char StrAddresses[Mai_MAX_LENGTH_STR_ADDR + 1];
+ char StrAddresses[Mai_MAX_BYTES_STR_ADDR + 1]; // TODO: Use malloc depending on the number of students
unsigned int LengthStrAddr = 0;
struct UsrData UsrDat;
@@ -906,16 +906,16 @@ void Mai_ListEmails (void)
{
fprintf (Gbl.F.Out,", ");
LengthStrAddr ++;
- if (LengthStrAddr > Mai_MAX_LENGTH_STR_ADDR)
+ if (LengthStrAddr > Mai_MAX_BYTES_STR_ADDR)
Lay_ShowErrorAndExit ("The space allocated to store email addresses is full.");
Str_Concat (StrAddresses,",",
- Mai_MAX_LENGTH_STR_ADDR);
+ Mai_MAX_BYTES_STR_ADDR);
}
LengthStrAddr += strlen (UsrDat.Email);
- if (LengthStrAddr > Mai_MAX_LENGTH_STR_ADDR)
+ if (LengthStrAddr > Mai_MAX_BYTES_STR_ADDR)
Lay_ShowErrorAndExit ("The space allocated to store email addresses is full.");
Str_Concat (StrAddresses,UsrDat.Email,
- Mai_MAX_LENGTH_STR_ADDR);
+ Mai_MAX_BYTES_STR_ADDR);
fprintf (Gbl.F.Out,"
%s ",
UsrDat.Email,Gbl.CurrentCrs.Crs.FullName,UsrDat.Email);
diff --git a/swad_mail.h b/swad_mail.h
index 1ec72c06..98a5945b 100644
--- a/swad_mail.h
+++ b/swad_mail.h
@@ -33,8 +33,11 @@
/************************** Public types and constants ***********************/
/*****************************************************************************/
-#define Mai_MAX_LENGTH_MAIL_DOMAIN (128 - 1)
-#define Mai_MAX_LENGTH_MAIL_INFO (128 - 1)
+#define Mai_MAX_CHARS_MAIL_DOMAIN (128 - 1)
+#define Mai_MAX_BYTES_MAIL_DOMAIN (Mai_MAX_CHARS_MAIL_DOMAIN * Str_MAX_BYTES_PER_CHAR)
+
+#define Mai_MAX_CHARS_MAIL_INFO (128 - 1)
+#define Mai_MAX_BYTES_MAIL_INFO (Mai_MAX_CHARS_MAIL_INFO * Str_MAX_BYTES_PER_CHAR)
#define Mai_NUM_ORDERS 3
typedef enum
@@ -48,8 +51,8 @@ typedef enum
struct Mail
{
long MaiCod;
- char Domain[Mai_MAX_LENGTH_MAIL_DOMAIN + 1];
- char Info[Mai_MAX_LENGTH_MAIL_INFO + 1];
+ char Domain[Mai_MAX_BYTES_MAIL_DOMAIN + 1];
+ char Info[Mai_MAX_BYTES_MAIL_INFO + 1];
unsigned NumUsrs;
};
diff --git a/swad_message.c b/swad_message.c
index c8ee1193..99df7aeb 100644
--- a/swad_message.c
+++ b/swad_message.c
@@ -56,7 +56,7 @@ extern struct Globals Gbl;
/***************************** Private constants *****************************/
/*****************************************************************************/
-#define Msg_MAX_LENGTH_MESSAGES_QUERY 4096
+#define Msg_MAX_BYTES_MESSAGES_QUERY (4 * 1024 - 1)
// Forum images will be saved with:
// - maximum width of Msg_IMAGE_SAVED_MAX_HEIGHT
@@ -103,7 +103,7 @@ static void Msg_WriteFormUsrsIDsOrNicksOtherRecipients (void);
static void Msg_WriteFormSubjectAndContentMsgToUsrs (char Content[Cns_MAX_BYTES_LONG_TEXT + 1]);
static void Msg_ShowNumMsgsDeleted (unsigned NumMsgs);
-static void Msg_MakeFilterFromToSubquery (char FilterFromToSubquery[Msg_MAX_LENGTH_MESSAGES_QUERY + 1]);
+static void Msg_MakeFilterFromToSubquery (char FilterFromToSubquery[Msg_MAX_BYTES_MESSAGES_QUERY + 1]);
static void Msg_ExpandSentMsg (long MsgCod);
static void Msg_ExpandReceivedMsg (long MsgCod);
@@ -641,7 +641,6 @@ void Msg_RecMsgFromUsr (void)
unsigned NumRecipientsToBeNotifiedByEMail = 0;
struct UsrData UsrDstData;
int NumErrors = 0;
- char *ListUsrsDst;
long NewMsgCod = -1L; // Initiliazed to avoid warning
bool MsgAlreadyInserted = false;
bool CreateNotif;
@@ -701,12 +700,6 @@ void Msg_RecMsgFromUsr (void)
return;
}
- /***** Allocate space to store a list of recipients with the following format:
- "FirstName Surname1 Surname2; FirstName Surname1 Surname2; FirstName Surname1 Surname2" *****/
- if ((ListUsrsDst = (char *) malloc (((Usr_MAX_BYTES_NAME + 1) * 3 + 1)*NumRecipients)) == NULL)
- Lay_ShowErrorAndExit ("Not enough memory to store email addresses of recipients.");
- ListUsrsDst[0] = '\0';
-
/***** Initialize structure with user's data *****/
Usr_UsrDataConstructor (&UsrDstData);
@@ -799,9 +792,6 @@ void Msg_RecMsgFromUsr (void)
Usr_UsrDataDestructor (&UsrDstData);
/***** Free memory *****/
- /* Free memory used for list of recipients' names */
- free (ListUsrsDst);
-
/* Free memory used for list of users */
Usr_FreeListOtherRecipients ();
Usr_FreeListsSelectedUsrsCods ();
@@ -941,7 +931,7 @@ void Msg_ReqDelAllSntMsgs (void)
void Msg_DelAllRecMsgs (void)
{
- char FilterFromToSubquery[Msg_MAX_LENGTH_MESSAGES_QUERY + 1];
+ char FilterFromToSubquery[Msg_MAX_BYTES_MESSAGES_QUERY + 1];
unsigned long NumMsgs;
/***** Get parameters *****/
@@ -963,7 +953,7 @@ void Msg_DelAllRecMsgs (void)
void Msg_DelAllSntMsgs (void)
{
- char FilterFromToSubquery[Msg_MAX_LENGTH_MESSAGES_QUERY + 1];
+ char FilterFromToSubquery[Msg_MAX_BYTES_MESSAGES_QUERY + 1];
unsigned long NumMsgs;
/***** Get parameters *****/
@@ -1028,7 +1018,7 @@ void Msg_GetParamFilterFromTo (void)
{
/***** Get "from"/"to" filter *****/
Par_GetParToText ("FilterFromTo",Gbl.Msg.FilterFromTo,
- Usr_MAX_LENGTH_USR_NAME_OR_SURNAME * 3);
+ Usr_MAX_BYTES_FULL_NAME);
}
/*****************************************************************************/
@@ -1039,17 +1029,17 @@ void Msg_GetParamFilterContent (void)
{
/***** Get content filter *****/
Par_GetParToText ("FilterContent",Gbl.Msg.FilterContent,
- Msg_MAX_LENGTH_FILTER_CONTENT);
+ Msg_MAX_BYTES_FILTER_CONTENT);
}
/*****************************************************************************/
/************************* Make "from"/"to" subquery *************************/
/*****************************************************************************/
-static void Msg_MakeFilterFromToSubquery (char FilterFromToSubquery[Msg_MAX_LENGTH_MESSAGES_QUERY + 1])
+static void Msg_MakeFilterFromToSubquery (char FilterFromToSubquery[Msg_MAX_BYTES_MESSAGES_QUERY + 1])
{
const char *Ptr;
- char SearchWord[Usr_MAX_LENGTH_USR_NAME_OR_SURNAME + 1];
+ char SearchWord[Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1];
/***** Split "from"/"to" string into words *****/
if (Gbl.Msg.FilterFromTo[0])
@@ -1057,19 +1047,20 @@ static void Msg_MakeFilterFromToSubquery (char FilterFromToSubquery[Msg_MAX_LENG
Ptr = Gbl.Msg.FilterFromTo;
Str_Copy (FilterFromToSubquery,
" AND CONCAT(usr_data.FirstName,usr_data.Surname1,usr_data.Surname2) LIKE '",
- Msg_MAX_LENGTH_MESSAGES_QUERY);
+ Msg_MAX_BYTES_MESSAGES_QUERY);
while (*Ptr)
{
- Str_GetNextStringUntilSpace (&Ptr,SearchWord,Usr_MAX_LENGTH_USR_NAME_OR_SURNAME);
- if (strlen (FilterFromToSubquery) + strlen (SearchWord) + 512 > Msg_MAX_LENGTH_MESSAGES_QUERY) // Prevent string overflow
+ Str_GetNextStringUntilSpace (&Ptr,SearchWord,Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
+ if (strlen (FilterFromToSubquery) + strlen (SearchWord) + 512 >
+ Msg_MAX_BYTES_MESSAGES_QUERY) // Prevent string overflow
break;
Str_Concat (FilterFromToSubquery,"%",
- Msg_MAX_LENGTH_MESSAGES_QUERY);
+ Msg_MAX_BYTES_MESSAGES_QUERY);
Str_Concat (FilterFromToSubquery,SearchWord,
- Msg_MAX_LENGTH_MESSAGES_QUERY);
+ Msg_MAX_BYTES_MESSAGES_QUERY);
}
Str_Concat (FilterFromToSubquery,"%'",
- Msg_MAX_LENGTH_MESSAGES_QUERY);
+ Msg_MAX_BYTES_MESSAGES_QUERY);
}
else
FilterFromToSubquery[0] = '\0';
@@ -1342,7 +1333,7 @@ static long Msg_InsertNewMsg (const char *Subject,const char *Content,
static unsigned long Msg_DelSomeRecOrSntMsgsUsr (Msg_TypeOfMessages_t TypeOfMessages,long UsrCod,
long FilterCrsCod,const char *FilterFromToSubquery)
{
- char Query[Msg_MAX_LENGTH_MESSAGES_QUERY + 1];
+ char Query[Msg_MAX_BYTES_MESSAGES_QUERY + 1];
MYSQL_RES *mysql_res;
MYSQL_ROW row;
unsigned long MsgNum,NumMsgs;
@@ -1582,8 +1573,8 @@ static bool Msg_CheckIfReceivedMsgIsDeletedForAllItsRecipients (long MsgCod)
static unsigned Msg_GetNumUnreadMsgs (long FilterCrsCod,const char *FilterFromToSubquery)
{
- char SubQuery[Msg_MAX_LENGTH_MESSAGES_QUERY + 1];
- char Query[Msg_MAX_LENGTH_MESSAGES_QUERY + 1];
+ char SubQuery[Msg_MAX_BYTES_MESSAGES_QUERY + 1];
+ char Query[Msg_MAX_BYTES_MESSAGES_QUERY + 1];
/***** Get number of unread messages from database *****/
if (FilterCrsCod >= 0) // If origin course selected
@@ -1675,8 +1666,8 @@ static void Msg_ShowSentOrReceivedMessages (void)
extern const char *The_ClassFormBold[The_NUM_THEMES];
extern const char *Txt_Filter;
extern const char *Txt_Update_messages;
- char FilterFromToSubquery[Msg_MAX_LENGTH_MESSAGES_QUERY + 1];
- char Query[Msg_MAX_LENGTH_MESSAGES_QUERY + 1];
+ char FilterFromToSubquery[Msg_MAX_BYTES_MESSAGES_QUERY + 1];
+ char Query[Msg_MAX_BYTES_MESSAGES_QUERY + 1];
MYSQL_RES *mysql_res;
MYSQL_ROW row;
unsigned long NumRow;
@@ -1871,7 +1862,7 @@ static void Msg_PutLinkToViewBannedUsers(void)
static void Msg_ConstructQueryToSelectSentOrReceivedMsgs (char *Query,long UsrCod,
long FilterCrsCod,const char *FilterFromToSubquery)
{
- char SubQuery[Msg_MAX_LENGTH_MESSAGES_QUERY + 1];
+ char SubQuery[Msg_MAX_BYTES_MESSAGES_QUERY + 1];
char *PtrQuery;
const char *StrUnreadMsg;
@@ -2592,7 +2583,7 @@ void Msg_ShowFormToFilterMsgs (void)
"",
The_ClassForm[Gbl.Prefs.Theme],
TxtFromTo[Gbl.Msg.TypeOfMessages],
- Usr_MAX_LENGTH_USR_NAME_OR_SURNAME * 3,Gbl.Msg.FilterFromTo);
+ Usr_MAX_CHARS_FIRSTNAME_OR_SURNAME * 3,Gbl.Msg.FilterFromTo);
/***** Filter message content *****/
fprintf (Gbl.F.Out,"
"
@@ -2604,7 +2595,7 @@ void Msg_ShowFormToFilterMsgs (void)
" ",
The_ClassForm[Gbl.Prefs.Theme],
Txt_MSG_Message,
- Msg_MAX_LENGTH_FILTER_CONTENT,Gbl.Msg.FilterContent);
+ Msg_MAX_CHARS_FILTER_CONTENT,Gbl.Msg.FilterContent);
/***** End table *****/
fprintf (Gbl.F.Out,""
diff --git a/swad_message.h b/swad_message.h
index 0f9ce879..a9ec4644 100644
--- a/swad_message.h
+++ b/swad_message.h
@@ -33,7 +33,8 @@
/****************************** Public constants *****************************/
/*****************************************************************************/
-#define Msg_MAX_LENGTH_FILTER_CONTENT 80
+#define Msg_MAX_CHARS_FILTER_CONTENT (128 - 1)
+#define Msg_MAX_BYTES_FILTER_CONTENT (Msg_MAX_CHARS_FILTER_CONTENT * Str_MAX_BYTES_PER_CHAR)
/*****************************************************************************/
/******************************** Public types *******************************/
diff --git a/swad_network.c b/swad_network.c
index df62fa33..1931bf61 100644
--- a/swad_network.c
+++ b/swad_network.c
@@ -79,7 +79,7 @@ typedef enum
} Net_WebsAndSocialNetworks_t;
#define Net_WEB_SOCIAL_NET_DEFAULT Net_WWW
-#define Net_MAX_LENGTH_NETWORK_NAME 32
+#define Net_MAX_BYTES_NETWORK_NAME 32
const char *Net_WebsAndSocialNetworksDB[Net_NUM_WEBS_AND_SOCIAL_NETWORKS] =
{
@@ -443,7 +443,7 @@ void Net_ShowWebAndSocialNetworksStats (void)
unsigned NumRows;
unsigned NumRow;
Net_WebsAndSocialNetworks_t Web;
- char NetName[Net_MAX_LENGTH_NETWORK_NAME + 1];
+ char NetName[Net_MAX_BYTES_NETWORK_NAME + 1];
unsigned NumUsrsTotalInPlatform;
unsigned NumUsrs;
@@ -555,7 +555,7 @@ void Net_ShowWebAndSocialNetworksStats (void)
/* Get web / social network (row[0]) */
Str_Copy (NetName,row[0],
- Net_MAX_LENGTH_NETWORK_NAME);
+ Net_MAX_BYTES_NETWORK_NAME);
for (Web = (Net_WebsAndSocialNetworks_t) 0;
Web < Net_NUM_WEBS_AND_SOCIAL_NETWORKS;
Web++)
diff --git a/swad_notification.c b/swad_notification.c
index 2f8d313b..8d237a2c 100644
--- a/swad_notification.c
+++ b/swad_notification.c
@@ -55,7 +55,7 @@ extern struct Globals Gbl;
/****************************** Public constants *****************************/
/*****************************************************************************/
-// strings are limited to Ntf_MAX_LENGTH_NOTIFY_EVENT characters
+// strings are limited to Ntf_MAX_BYTES_NOTIFY_EVENT characters
const char *Ntf_WSNotifyEvents[Ntf_NUM_NOTIFY_EVENTS] =
{
diff --git a/swad_notification.h b/swad_notification.h
index 2e6936db..5e2d92d9 100644
--- a/swad_notification.h
+++ b/swad_notification.h
@@ -33,9 +33,10 @@
/****************************** Public constants *****************************/
/*****************************************************************************/
-#define Ntf_MAX_LENGTH_NOTIFY_EVENT 32
+#define Ntf_MAX_BYTES_NOTIFY_EVENT 32
-#define Ntf_MAX_LENGTH_NOTIFY_LOCATION (1024 - 1)
+#define Ntf_MAX_CHARS_NOTIFY_LOCATION (128 - 1)
+#define Ntf_MAX_BYTES_NOTIFY_LOCATION (1024 + Ntf_MAX_CHARS_NOTIFY_LOCATION * Str_MAX_BYTES_PER_CHAR)
/*****************************************************************************/
/******************************** Public types *******************************/
diff --git a/swad_parameter.c b/swad_parameter.c
index 0e5c2421..ef906ce8 100644
--- a/swad_parameter.c
+++ b/swad_parameter.c
@@ -70,18 +70,18 @@ static bool Par_CheckIsParamCanBeUsedInGETMethod (const char *ParamName);
/*** Read all parameters passed to this CGI and store for later processing ***/
/*****************************************************************************/
-#define Par_MAX_LENGTH_METHOD (256 - 1)
-#define Par_MAX_LENGTH_CONTENT_TYPE (256 - 1)
+#define Par_MAX_BYTES_METHOD (128 - 1)
+#define Par_MAX_BYTES_CONTENT_TYPE (128 - 1)
bool Par_GetQueryString (void)
{
- char Method[Par_MAX_LENGTH_METHOD + 1];
- char ContentType[Par_MAX_LENGTH_CONTENT_TYPE + 1];
+ char Method[Par_MAX_BYTES_METHOD + 1];
+ char ContentType[Par_MAX_BYTES_CONTENT_TYPE + 1];
char UnsignedLongStr[10 + 1];
unsigned long UnsignedLong;
Str_Copy (Method,getenv ("REQUEST_METHOD"),
- Par_MAX_LENGTH_METHOD);
+ Par_MAX_BYTES_METHOD);
if (!strcmp (Method,"GET"))
{
@@ -122,7 +122,7 @@ bool Par_GetQueryString (void)
return false;
Str_Copy (ContentType,getenv ("CONTENT_TYPE"),
- Par_MAX_LENGTH_CONTENT_TYPE);
+ Par_MAX_BYTES_CONTENT_TYPE);
if (!strncmp (ContentType,"multipart/form-data",strlen ("multipart/form-data")))
{
diff --git a/swad_password.c b/swad_password.c
index 47fcad10..f052fde6 100644
--- a/swad_password.c
+++ b/swad_password.c
@@ -261,7 +261,7 @@ void Pwd_ShowFormSendNewPwd (void)
" size=\"8\" maxlength=\"%u\" value=\"%s\" />"
"",
The_ClassForm[Gbl.Prefs.Theme],Txt_nick_email_or_ID,
- Usr_MAX_LENGTH_USR_LOGIN,Gbl.Usrs.Me.UsrIdLogin);
+ Usr_MAX_CHARS_USR_LOGIN,Gbl.Usrs.Me.UsrIdLogin);
/***** Send button and end frame *****/
Lay_EndRoundFrameWithButton (Lay_CONFIRM_BUTTON,Txt_Get_a_new_password);
diff --git a/swad_photo.c b/swad_photo.c
index 3291f6f3..da8bf223 100644
--- a/swad_photo.c
+++ b/swad_photo.c
@@ -1884,7 +1884,8 @@ static void Pho_PutLinkToPrintViewOfDegreeStatsParams (void)
/*************** Put a link to calculate the stats of degrees ****************/
/*****************************************************************************/
-#define Pho_MAX_LENGTH_ESTIMATED_TIME (64 - 1)
+#define Pho_MAX_BYTES_ESTIMATED_TIME (128 - 1)
+
static void Pho_PutLinkToCalculateDegreeStats (void)
{
extern const char *The_ClassFormBold[The_NUM_THEMES];
@@ -1896,7 +1897,7 @@ static void Pho_PutLinkToCalculateDegreeStats (void)
unsigned NumDeg;
struct Degree Deg;
long EstimatedTimeToComputeAvgPhotoInMicroseconds;
- char StrEstimatedTimeToComputeAvgPhoto[Pho_MAX_LENGTH_ESTIMATED_TIME + 1];
+ char StrEstimatedTimeToComputeAvgPhoto[Pho_MAX_BYTES_ESTIMATED_TIME + 1];
if ((Deg.DegCod = Pho_GetDegWithAvgPhotoLeastRecentlyUpdated ()) > 0)
{
@@ -1931,9 +1932,10 @@ static void Pho_PutLinkToCalculateDegreeStats (void)
EstimatedTimeToComputeAvgPhotoInMicroseconds = Pho_GetTimeToComputeAvgPhoto (Degs.Lst[NumDeg].DegCod);
if (EstimatedTimeToComputeAvgPhotoInMicroseconds == -1L)
Str_Copy (StrEstimatedTimeToComputeAvgPhoto,Txt_unknown_TIME,
- Pho_MAX_LENGTH_ESTIMATED_TIME);
+ Pho_MAX_BYTES_ESTIMATED_TIME);
else
- Sta_WriteTime (StrEstimatedTimeToComputeAvgPhoto,EstimatedTimeToComputeAvgPhotoInMicroseconds);
+ Sta_WriteTime (StrEstimatedTimeToComputeAvgPhoto,
+ EstimatedTimeToComputeAvgPhotoInMicroseconds);
fprintf (Gbl.F.Out,"
%s (%s: %s) ",
Degs.Lst[NumDeg].DegCod,
diff --git a/swad_place.c b/swad_place.c
index 0403a6aa..26d0256c 100644
--- a/swad_place.c
+++ b/swad_place.c
@@ -317,11 +317,11 @@ void Plc_GetListPlaces (void)
/* Get the short name of the place (row[1]) */
Str_Copy (Plc->ShrtName,row[1],
- Plc_MAX_LENGTH_PLACE_SHRT_NAME);
+ Plc_MAX_BYTES_PLACE_SHRT_NAME);
/* Get the full name of the place (row[2]) */
Str_Copy (Plc->FullName,row[2],
- Plc_MAX_LENGTH_PLACE_FULL_NAME);
+ Plc_MAX_BYTES_PLACE_FULL_NAME);
/* Get number of centres in this place (row[3]) */
if (sscanf (row[3],"%u",&Plc->NumCtrs) != 1)
@@ -357,16 +357,16 @@ void Plc_GetDataOfPlaceByCod (struct Place *Plc)
if (Plc->PlcCod < 0)
{
Str_Copy (Plc->ShrtName,Txt_Place_unspecified,
- Plc_MAX_LENGTH_PLACE_SHRT_NAME);
+ Plc_MAX_BYTES_PLACE_SHRT_NAME);
Str_Copy (Plc->FullName,Txt_Place_unspecified,
- Plc_MAX_LENGTH_PLACE_FULL_NAME);
+ Plc_MAX_BYTES_PLACE_FULL_NAME);
}
else if (Plc->PlcCod == 0)
{
Str_Copy (Plc->ShrtName,Txt_Another_place,
- Plc_MAX_LENGTH_PLACE_SHRT_NAME);
+ Plc_MAX_BYTES_PLACE_SHRT_NAME);
Str_Copy (Plc->FullName,Txt_Another_place,
- Plc_MAX_LENGTH_PLACE_FULL_NAME);
+ Plc_MAX_BYTES_PLACE_FULL_NAME);
}
else if (Plc->PlcCod > 0)
{
@@ -396,11 +396,11 @@ void Plc_GetDataOfPlaceByCod (struct Place *Plc)
/* Get the short name of the place (row[0]) */
Str_Copy (Plc->ShrtName,row[0],
- Plc_MAX_LENGTH_PLACE_SHRT_NAME);
+ Plc_MAX_BYTES_PLACE_SHRT_NAME);
/* Get the full name of the place (row[1]) */
Str_Copy (Plc->FullName,row[1],
- Plc_MAX_LENGTH_PLACE_FULL_NAME);
+ Plc_MAX_BYTES_PLACE_FULL_NAME);
/* Get number of centres in this place (row[2]) */
if (sscanf (row[2],"%u",&Plc->NumCtrs) != 1)
@@ -479,7 +479,7 @@ static void Plc_ListPlacesForEdition (void)
" maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_SHORT_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />",
- Plc_MAX_LENGTH_PLACE_SHRT_NAME,Plc->ShrtName,Gbl.Form.Id);
+ Plc_MAX_CHARS_PLACE_SHRT_NAME,Plc->ShrtName,Gbl.Form.Id);
Act_FormEnd ();
fprintf (Gbl.F.Out,"");
@@ -491,7 +491,7 @@ static void Plc_ListPlacesForEdition (void)
" maxlength=\"%u\" value=\"%s\""
" class=\"INPUT_FULL_NAME\""
" onchange=\"document.getElementById('%s').submit();\" />",
- Plc_MAX_LENGTH_PLACE_FULL_NAME,Plc->FullName,Gbl.Form.Id);
+ Plc_MAX_CHARS_PLACE_FULL_NAME,Plc->FullName,Gbl.Form.Id);
Act_FormEnd ();
fprintf (Gbl.F.Out,"");
@@ -595,9 +595,9 @@ static void Plc_RenamePlace (Cns_ShrtOrFullName_t ShrtOrFullName)
struct Place *Plc;
const char *ParamName = NULL; // Initialized to avoid warning
const char *FieldName = NULL; // Initialized to avoid warning
- unsigned MaxLength = 0; // Initialized to avoid warning
+ unsigned MaxBytes = 0; // Initialized to avoid warning
char *CurrentPlcName = NULL; // Initialized to avoid warning
- char NewPlcName[Plc_MAX_LENGTH_PLACE_FULL_NAME + 1];
+ char NewPlcName[Plc_MAX_BYTES_PLACE_FULL_NAME + 1];
Plc = &Gbl.Plcs.EditingPlc;
switch (ShrtOrFullName)
@@ -605,13 +605,13 @@ static void Plc_RenamePlace (Cns_ShrtOrFullName_t ShrtOrFullName)
case Cns_SHRT_NAME:
ParamName = "ShortName";
FieldName = "ShortName";
- MaxLength = Plc_MAX_LENGTH_PLACE_SHRT_NAME;
+ MaxBytes = Plc_MAX_BYTES_PLACE_SHRT_NAME;
CurrentPlcName = Plc->ShrtName;
break;
case Cns_FULL_NAME:
ParamName = "FullName";
FieldName = "FullName";
- MaxLength = Plc_MAX_LENGTH_PLACE_FULL_NAME;
+ MaxBytes = Plc_MAX_BYTES_PLACE_FULL_NAME;
CurrentPlcName = Plc->FullName;
break;
}
@@ -622,7 +622,7 @@ static void Plc_RenamePlace (Cns_ShrtOrFullName_t ShrtOrFullName)
Lay_ShowErrorAndExit ("Code of place is missing.");
/* Get the new name for the place */
- Par_GetParToText (ParamName,NewPlcName,MaxLength);
+ Par_GetParToText (ParamName,NewPlcName,MaxBytes);
/***** Get from the database the old names of the place *****/
Plc_GetDataOfPlaceByCod (Plc);
@@ -669,7 +669,7 @@ static void Plc_RenamePlace (Cns_ShrtOrFullName_t ShrtOrFullName)
/***** Show the form again *****/
Str_Copy (CurrentPlcName,NewPlcName,
- MaxLength);
+ MaxBytes);
Plc_EditPlaces ();
}
@@ -730,7 +730,7 @@ static void Plc_PutFormToCreatePlace (void)
" class=\"INPUT_SHORT_NAME\""
" required=\"required\" />"
"",
- Plc_MAX_LENGTH_PLACE_SHRT_NAME,Plc->ShrtName);
+ Plc_MAX_CHARS_PLACE_SHRT_NAME,Plc->ShrtName);
/***** Place full name *****/
fprintf (Gbl.F.Out,"
"
@@ -740,7 +740,7 @@ static void Plc_PutFormToCreatePlace (void)
" required=\"required\" />"
" "
"",
- Plc_MAX_LENGTH_PLACE_FULL_NAME,Plc->FullName);
+ Plc_MAX_CHARS_PLACE_FULL_NAME,Plc->FullName);
/***** Send button and end frame *****/
Lay_EndRoundFrameTableWithButton (Lay_CREATE_BUTTON,Txt_Create_place);
@@ -795,10 +795,10 @@ void Plc_RecFormNewPlace (void)
/***** Get parameters from form *****/
/* Get place short name */
- Par_GetParToText ("ShortName",Plc->ShrtName,Plc_MAX_LENGTH_PLACE_SHRT_NAME);
+ Par_GetParToText ("ShortName",Plc->ShrtName,Plc_MAX_BYTES_PLACE_SHRT_NAME);
/* Get place full name */
- Par_GetParToText ("FullName",Plc->FullName,Plc_MAX_LENGTH_PLACE_FULL_NAME);
+ Par_GetParToText ("FullName",Plc->FullName,Plc_MAX_BYTES_PLACE_FULL_NAME);
if (Plc->ShrtName[0] && Plc->FullName[0]) // If there's a place name
{
diff --git a/swad_place.h b/swad_place.h
index 90d7c4ad..9d681db4 100644
--- a/swad_place.h
+++ b/swad_place.h
@@ -31,15 +31,18 @@
/************************** Public types and constants ***********************/
/*****************************************************************************/
-#define Plc_MAX_LENGTH_PLACE_SHRT_NAME 32
-#define Plc_MAX_LENGTH_PLACE_FULL_NAME 127
+#define Plc_MAX_CHARS_PLACE_SHRT_NAME 32
+#define Plc_MAX_BYTES_PLACE_SHRT_NAME (Plc_MAX_CHARS_PLACE_SHRT_NAME * Str_MAX_BYTES_PER_CHAR)
+
+#define Plc_MAX_CHARS_PLACE_FULL_NAME (128 - 1)
+#define Plc_MAX_BYTES_PLACE_FULL_NAME (Plc_MAX_CHARS_PLACE_FULL_NAME * Str_MAX_BYTES_PER_CHAR)
struct Place
{
long PlcCod;
long InsCod;
- char ShrtName[Plc_MAX_LENGTH_PLACE_SHRT_NAME + 1];
- char FullName[Plc_MAX_LENGTH_PLACE_FULL_NAME + 1];
+ char ShrtName[Plc_MAX_BYTES_PLACE_SHRT_NAME + 1];
+ char FullName[Plc_MAX_BYTES_PLACE_FULL_NAME + 1];
unsigned NumCtrs;
};
diff --git a/swad_plugin.h b/swad_plugin.h
index 15d44e4a..1c505f4e 100644
--- a/swad_plugin.h
+++ b/swad_plugin.h
@@ -31,9 +31,12 @@
/****************************** Public constants *****************************/
/*****************************************************************************/
-#define Plg_MAX_LENGTH_PLUGIN_NAME 127
+#define Plg_MAX_LENGTH_PLUGIN_NAME (128 - 1)
+
#define Plg_MAX_LENGTH_PLUGIN_DESCRIPTION 1023
+
#define Plg_MAX_LENGTH_PLUGIN_LOGO 16
+
#define Plg_MAX_LENGTH_PLUGIN_APP_KEY 16
/*****************************************************************************/
diff --git a/swad_record.c b/swad_record.c
index b321eb71..94fbd77f 100644
--- a/swad_record.c
+++ b/swad_record.c
@@ -2959,7 +2959,7 @@ static void Rec_ShowSurname1 (struct UsrData *UsrDat,
" id=\"Surname1\" name=\"Surname1\""
" maxlength=\"%u\" value=\"%s\""
" class=\"REC_C2_BOT_INPUT\"",
- Usr_MAX_LENGTH_USR_NAME_OR_SURNAME,
+ Usr_MAX_CHARS_FIRSTNAME_OR_SURNAME,
UsrDat->Surname1);
if (TypeOfView == Rec_SHA_MY_RECORD_FORM)
fprintf (Gbl.F.Out," required=\"required\"");
@@ -2995,7 +2995,7 @@ static void Rec_ShowSurname2 (struct UsrData *UsrDat,
" id=\"Surname2\" name=\"Surname2\""
" maxlength=\"%u\" value=\"%s\""
" class=\"REC_C2_BOT_INPUT\" />",
- Usr_MAX_LENGTH_USR_NAME_OR_SURNAME,
+ Usr_MAX_CHARS_FIRSTNAME_OR_SURNAME,
UsrDat->Surname2);
else if (UsrDat->Surname2[0])
fprintf (Gbl.F.Out,"
%s ",UsrDat->Surname2);
@@ -3032,7 +3032,7 @@ static void Rec_ShowFirstName (struct UsrData *UsrDat,
" id=\"FirstName\" name=\"FirstName\""
" maxlength=\"%u\" value=\"%s\""
" class=\"REC_C2_BOT_INPUT\"",
- Usr_MAX_LENGTH_USR_NAME_OR_SURNAME,
+ Usr_MAX_CHARS_FIRSTNAME_OR_SURNAME,
UsrDat->FirstName);
if (TypeOfView == Rec_SHA_MY_RECORD_FORM)
fprintf (Gbl.F.Out," required=\"required\"");
@@ -3581,26 +3581,31 @@ Rol_Role_t Rec_GetRoleFromRecordForm (void)
void Rec_GetUsrNameFromRecordForm (struct UsrData *UsrDat)
{
- char Surname1 [Usr_MAX_BYTES_NAME + 1]; // Temporary surname 1
- char FirstName[Usr_MAX_BYTES_NAME + 1]; // Temporary first name
+ char Surname1 [Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1]; // Temporary surname 1
+ char FirstName[Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1]; // Temporary first name
/***** Get surname 1 *****/
- Par_GetParToText ("Surname1",Surname1,Usr_MAX_BYTES_NAME);
+ Par_GetParToText ("Surname1",Surname1,
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Str_ConvertToTitleType (Surname1);
// Surname 1 is mandatory, so avoid overwriting surname 1 with empty string
if (Surname1[0]) // New surname 1 not empty
- Str_Copy (UsrDat->Surname1,Surname1,Usr_MAX_BYTES_NAME);
+ Str_Copy (UsrDat->Surname1,Surname1,
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
/***** Get surname 2 *****/
- Par_GetParToText ("Surname2",UsrDat->Surname2,Usr_MAX_BYTES_NAME);
+ Par_GetParToText ("Surname2",UsrDat->Surname2,
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Str_ConvertToTitleType (UsrDat->Surname2);
/***** Get first name *****/
- Par_GetParToText ("FirstName",FirstName,Usr_MAX_BYTES_NAME);
+ Par_GetParToText ("FirstName",FirstName,
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Str_ConvertToTitleType (FirstName);
// First name is mandatory, so avoid overwriting first name with empty string
if (Surname1[0]) // New first name not empty
- Str_Copy (UsrDat->FirstName,FirstName,Usr_MAX_BYTES_NAME);
+ Str_Copy (UsrDat->FirstName,FirstName,
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
/***** Build full name *****/
Usr_BuildFullName (UsrDat);
diff --git a/swad_user.c b/swad_user.c
index 67f5af9c..7960c31f 100644
--- a/swad_user.c
+++ b/swad_user.c
@@ -500,11 +500,11 @@ void Usr_GetUsrDataFromUsrCod (struct UsrData *UsrDat)
/* Get name */
Str_Copy (UsrDat->Surname1,row[2],
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Str_Copy (UsrDat->Surname2,row[3],
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Str_Copy (UsrDat->FirstName,row[4],
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
/* Get sex */
UsrDat->Sex = Usr_GetSexFromStr (row[5]);
@@ -2054,7 +2054,7 @@ void Usr_WriteFormLogin (Act_Action_t NextAction,void (*FuncParams) ())
Gbl.Prefs.IconsURL,
Txt_User[Usr_SEX_UNKNOWN],
Txt_User[Usr_SEX_UNKNOWN],
- Usr_MAX_LENGTH_USR_LOGIN,
+ Usr_MAX_CHARS_USR_LOGIN,
Txt_nick_email_or_ID,
Gbl.Usrs.Me.UsrIdLogin);
@@ -4887,15 +4887,15 @@ static void Usr_GetListUsrsFromQuery (const char *Query,Rol_Role_t Role,Sco_Scop
/* Get user's surname 1 (row[3]) */
Str_Copy (UsrInList->Surname1,row[3],
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
/* Get user's surname 2 (row[4]) */
Str_Copy (UsrInList->Surname2,row[4],
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
/* Get user's first name (row[5]) */
Str_Copy (UsrInList->FirstName,row[5],
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
/* Get user's sex (row[6]) */
UsrInList->Sex = Usr_GetSexFromStr (row[6]);
@@ -5004,11 +5004,11 @@ void Usr_CopyBasicUsrDataFromList (struct UsrData *UsrDat,const struct UsrInList
Str_Copy (UsrDat->EncryptedUsrCod,UsrInList->EncryptedUsrCod,
Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64);
Str_Copy (UsrDat->Surname1,UsrInList->Surname1,
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Str_Copy (UsrDat->Surname2,UsrInList->Surname2,
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Str_Copy (UsrDat->FirstName,UsrInList->FirstName,
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
UsrDat->Sex = UsrInList->Sex;
Str_Copy (UsrDat->Photo,UsrInList->Photo,
Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64);
diff --git a/swad_user.h b/swad_user.h
index 2d77452c..a7e39301 100644
--- a/swad_user.h
+++ b/swad_user.h
@@ -53,20 +53,20 @@
#define Usr_DEF_MONTHS_WITHOUT_ACCESS_TO_REMOVE_OLD_USRS 12
#define Usr_MAX_MONTHS_WITHOUT_ACCESS_TO_REMOVE_OLD_USRS 60
-#define Usr_MAX_LENGTH_USR_NAME_OR_SURNAME 32
-#define Usr_MAX_BYTES_NAME 32
+#define Usr_MAX_CHARS_FIRSTNAME_OR_SURNAME 32
+#define Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME (Usr_MAX_CHARS_FIRSTNAME_OR_SURNAME * Str_MAX_BYTES_PER_CHAR)
-#define Usr_MAX_BYTES_SURNAMES (Usr_MAX_BYTES_NAME + 1 + Usr_MAX_BYTES_NAME)
- // Surname1 +' '+ Surname2
-#define Usr_MAX_BYTES_FULL_NAME (Usr_MAX_BYTES_NAME + 1 + Usr_MAX_BYTES_NAME + 6 + Usr_MAX_BYTES_NAME)
- // Surname1 +' '+ Surname2 + ','+' ' + FirstName
- // Surname1 +' '+ Surname2 + '
' + FirstName
+#define Usr_MAX_BYTES_SURNAMES (Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1 + Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME)
+ // Surname1 +' '+ Surname2
+#define Usr_MAX_BYTES_FULL_NAME (Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1 + Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 6 + Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME)
+ // Surname1 +' '+ Surname2 + ','+' ' + FirstName
+ // Surname1 +' '+ Surname2 + '
' + FirstName
-#define Usr_MAX_CHARS_USR_EMAIL (128 - 1)
-#define Usr_MAX_BYTES_USR_EMAIL Usr_MAX_CHARS_USR_EMAIL
+#define Usr_MAX_CHARS_USR_EMAIL (128 - 1)
+#define Usr_MAX_BYTES_USR_EMAIL Usr_MAX_CHARS_USR_EMAIL
-#define Usr_MAX_LENGTH_USR_LOGIN (128 - 1) // @nick, email or ID
-#define Usr_MAX_BYTES_USR_LOGIN (128 - 1)
+#define Usr_MAX_CHARS_USR_LOGIN Usr_MAX_CHARS_USR_EMAIL // Maximum number of chars of @nick, email or ID
+#define Usr_MAX_BYTES_USR_LOGIN (Usr_MAX_CHARS_USR_LOGIN * Str_MAX_BYTES_PER_CHAR)
#define Usr_BIRTHDAY_STR_DB_LENGTH (4 + 1 + 2 + 1 + 2) // "'%04u-%02u-%02u'"
@@ -134,9 +134,9 @@ struct UsrData
// >=0 ==> filled/calculated
// <0 ==> not yet filled/calculated
bool Accepted; // User has accepted joining to current course?
- char Surname1 [Usr_MAX_BYTES_NAME + 1];
- char Surname2 [Usr_MAX_BYTES_NAME + 1];
- char FirstName [Usr_MAX_BYTES_NAME + 1];
+ char Surname1 [Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1];
+ char Surname2 [Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1];
+ char FirstName [Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1];
char FullName [Usr_MAX_BYTES_FULL_NAME + 1];
Usr_Sex_t Sex;
char Email [Usr_MAX_BYTES_USR_EMAIL + 1];
@@ -188,9 +188,9 @@ struct UsrInList
long UsrCod;
char EncryptedUsrCod[Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64 + 1];
char Password[Cry_LENGTH_ENCRYPTED_STR_SHA512_BASE64 + 1];
- char Surname1 [Usr_MAX_BYTES_NAME + 1];
- char Surname2 [Usr_MAX_BYTES_NAME + 1];
- char FirstName[Usr_MAX_BYTES_NAME + 1];
+ char Surname1 [Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1];
+ char Surname2 [Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1];
+ char FirstName[Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1];
Usr_Sex_t Sex;
char Photo[Cry_BYTES_ENCRYPTED_STR_SHA256_BASE64 + 1]; // Name of public link to photo
Pri_Visibility_t PhotoVisibility; // Who can see user's photo
diff --git a/swad_web_service.c b/swad_web_service.c
index eed6bc32..457168f6 100644
--- a/swad_web_service.c
+++ b/swad_web_service.c
@@ -554,11 +554,11 @@ static bool Svc_GetSomeUsrDataFromUsrCod (struct UsrData *UsrDat,long CrsCod)
/* Get user's name */
Str_Copy (UsrDat->Surname1,row[0],
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Str_Copy (UsrDat->Surname2,row[1],
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Str_Copy (UsrDat->FirstName,row[2],
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
/* Get user's photo */
Str_Copy (UsrDat->Photo,row[3],
@@ -784,9 +784,9 @@ int swad__loginByUserPasswordKey (struct soap *soap,
loginByUserPasswordKeyOut->wsKey = (char *) soap_malloc (Gbl.soap,Svc_LENGTH_WS_KEY + 1);
loginByUserPasswordKeyOut->userNickname = (char *) soap_malloc (Gbl.soap,Nck_MAX_BYTES_NICKNAME_WITHOUT_ARROBA + 1);
loginByUserPasswordKeyOut->userID = (char *) soap_malloc (Gbl.soap,ID_MAX_BYTES_USR_ID + 1);
- loginByUserPasswordKeyOut->userFirstname = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_NAME + 1);
- loginByUserPasswordKeyOut->userSurname1 = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_NAME + 1);
- loginByUserPasswordKeyOut->userSurname2 = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_NAME + 1);
+ loginByUserPasswordKeyOut->userFirstname = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1);
+ loginByUserPasswordKeyOut->userSurname1 = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1);
+ loginByUserPasswordKeyOut->userSurname2 = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1);
loginByUserPasswordKeyOut->userPhoto = (char *) soap_malloc (Gbl.soap,Cns_MAX_BYTES_WWW + 1);
loginByUserPasswordKeyOut->userBirthday = (char *) soap_malloc (Gbl.soap,Dat_LENGTH_YYYYMMDD + 1);
@@ -888,13 +888,13 @@ int swad__loginByUserPasswordKey (struct soap *soap,
Str_Copy (loginByUserPasswordKeyOut->userSurname1,
Gbl.Usrs.Me.UsrDat.Surname1,
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Str_Copy (loginByUserPasswordKeyOut->userSurname2,
Gbl.Usrs.Me.UsrDat.Surname2,
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Str_Copy (loginByUserPasswordKeyOut->userFirstname,
Gbl.Usrs.Me.UsrDat.FirstName,
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Pho_BuildLinkToPhoto (&Gbl.Usrs.Me.UsrDat,PhotoURL);
Str_Copy (loginByUserPasswordKeyOut->userPhoto,PhotoURL,
@@ -950,9 +950,9 @@ int swad__loginBySessionKey (struct soap *soap,
loginBySessionKeyOut->wsKey = (char *) soap_malloc (Gbl.soap,Svc_LENGTH_WS_KEY + 1);
loginBySessionKeyOut->userNickname = (char *) soap_malloc (Gbl.soap,Nck_MAX_BYTES_NICKNAME_WITHOUT_ARROBA + 1);
loginBySessionKeyOut->userID = (char *) soap_malloc (Gbl.soap,ID_MAX_BYTES_USR_ID + 1);
- loginBySessionKeyOut->userFirstname = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_NAME + 1);
- loginBySessionKeyOut->userSurname1 = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_NAME + 1);
- loginBySessionKeyOut->userSurname2 = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_NAME + 1);
+ loginBySessionKeyOut->userFirstname = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1);
+ loginBySessionKeyOut->userSurname1 = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1);
+ loginBySessionKeyOut->userSurname2 = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1);
loginBySessionKeyOut->userPhoto = (char *) soap_malloc (Gbl.soap,Cns_MAX_BYTES_WWW + 1);
loginBySessionKeyOut->userBirthday = (char *) soap_malloc (Gbl.soap,Dat_LENGTH_YYYYMMDD + 1);
loginBySessionKeyOut->degreeName = (char *) soap_malloc (Gbl.soap,Deg_MAX_BYTES_DEGREE_FULL_NAME + 1);
@@ -1041,13 +1041,13 @@ int swad__loginBySessionKey (struct soap *soap,
Str_Copy (loginBySessionKeyOut->userSurname1,
Gbl.Usrs.Me.UsrDat.Surname1,
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Str_Copy (loginBySessionKeyOut->userSurname2,
Gbl.Usrs.Me.UsrDat.Surname2,
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Str_Copy (loginBySessionKeyOut->userFirstname,
Gbl.Usrs.Me.UsrDat.FirstName,
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Pho_BuildLinkToPhoto (&Gbl.Usrs.Me.UsrDat,PhotoURL);
Str_Copy (loginBySessionKeyOut->userPhoto,PhotoURL,
@@ -2871,10 +2871,10 @@ int swad__getNotifications (struct soap *soap,
/* Get notification event type (row[1]) */
NotifyEvent = Ntf_GetNotifyEventFromDB ((const char *) row[1]);
- getNotificationsOut->notificationsArray.__ptr[NumNotif].eventType = (char *) soap_malloc (Gbl.soap,Ntf_MAX_LENGTH_NOTIFY_EVENT + 1);
+ getNotificationsOut->notificationsArray.__ptr[NumNotif].eventType = (char *) soap_malloc (Gbl.soap,Ntf_MAX_BYTES_NOTIFY_EVENT + 1);
Str_Copy (getNotificationsOut->notificationsArray.__ptr[NumNotif].eventType,
Ntf_WSNotifyEvents[NotifyEvent],
- Ntf_MAX_LENGTH_NOTIFY_EVENT);
+ Ntf_MAX_BYTES_NOTIFY_EVENT);
/* Get time of the event (row[2]) */
EventTime = 0L;
@@ -2896,20 +2896,20 @@ int swad__getNotifications (struct soap *soap,
Gbl.Usrs.Other.UsrDat.Nickname,
Nck_MAX_BYTES_NICKNAME_WITHOUT_ARROBA);
- getNotificationsOut->notificationsArray.__ptr[NumNotif].userSurname1 = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_NAME + 1);
+ getNotificationsOut->notificationsArray.__ptr[NumNotif].userSurname1 = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1);
Str_Copy (getNotificationsOut->notificationsArray.__ptr[NumNotif].userSurname1,
Gbl.Usrs.Other.UsrDat.Surname1,
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
- getNotificationsOut->notificationsArray.__ptr[NumNotif].userSurname2 = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_NAME + 1);
+ getNotificationsOut->notificationsArray.__ptr[NumNotif].userSurname2 = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1);
Str_Copy (getNotificationsOut->notificationsArray.__ptr[NumNotif].userSurname2,
Gbl.Usrs.Other.UsrDat.Surname2,
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
- getNotificationsOut->notificationsArray.__ptr[NumNotif].userFirstname = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_NAME + 1);
+ getNotificationsOut->notificationsArray.__ptr[NumNotif].userFirstname = (char *) soap_malloc (Gbl.soap,Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME + 1);
Str_Copy (getNotificationsOut->notificationsArray.__ptr[NumNotif].userFirstname,
Gbl.Usrs.Other.UsrDat.FirstName,
- Usr_MAX_BYTES_NAME);
+ Usr_MAX_BYTES_FIRSTNAME_OR_SURNAME);
Pho_BuildLinkToPhoto (&Gbl.Usrs.Other.UsrDat,PhotoURL);
getNotificationsOut->notificationsArray.__ptr[NumNotif].userPhoto = (char *) soap_malloc (Gbl.soap,Cns_MAX_BYTES_WWW + 1);
@@ -2943,7 +2943,7 @@ int swad__getNotifications (struct soap *soap,
getNotificationsOut->notificationsArray.__ptr[NumNotif].eventCode = (int) Cod;
/* Set location */
- getNotificationsOut->notificationsArray.__ptr[NumNotif].location = (char *) soap_malloc (Gbl.soap,Ntf_MAX_LENGTH_NOTIFY_LOCATION + 1);
+ getNotificationsOut->notificationsArray.__ptr[NumNotif].location = (char *) soap_malloc (Gbl.soap,Ntf_MAX_BYTES_NOTIFY_LOCATION + 1);
if (NotifyEvent == Ntf_EVENT_FORUM_POST_COURSE ||
NotifyEvent == Ntf_EVENT_FORUM_REPLY)
@@ -2971,7 +2971,7 @@ int swad__getNotifications (struct soap *soap,
Txt_Institution,Ins.ShrtName);
else
Str_Copy (getNotificationsOut->notificationsArray.__ptr[NumNotif].location,"-",
- Ntf_MAX_LENGTH_NOTIFY_LOCATION);
+ Ntf_MAX_BYTES_NOTIFY_LOCATION);
/* Get status (row[9]) */
if (sscanf (row[9],"%u",&Status) != 1)