/** * @file lldbstrings.h * @brief Database String Lengths. * * $LicenseInfo:firstyear=2002&license=viewerlgpl$ * Second Life Viewer Source Code * Copyright (C) 2010, Linden Research, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; * version 2.1 of the License only. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA * $/LicenseInfo$ */ #ifndef LL_LLDBSTRINGS_H #define LL_LLDBSTRINGS_H /** * Defines the length of strings that are stored in the database (and * the size of the buffer large enough to hold each one) */ // asset.name varchar(63) // -also- // user_inventory_item.name varchar(63) // -also- // user_inventory_folder.name varchar(63) was CAT_NAME_SIZE // Must be >= DB_FULL_NAME_STR_LEN so that calling cards work const S32 DB_INV_ITEM_NAME_STR_LEN = 63; // was MAX_ASSET_NAME_LENGTH const S32 DB_INV_ITEM_NAME_BUF_SIZE = 64; // was ITEM_NAME_SIZE // asset.description varchar(127) // -also- // user_inventory_item.description varchar(127) const S32 DB_INV_ITEM_DESC_STR_LEN = 127; // was MAX_ASSET_DESCRIPTION_LENGTH const S32 DB_INV_ITEM_DESC_BUF_SIZE = 128; // was ITEM_DESC_SIZE // groups.name varchar(35) const S32 DB_GROUP_NAME_STR_LEN = 35; const S32 DB_GROUP_NAME_BUF_SIZE = 36; const S32 DB_GROUP_NAME_MIN_LEN = 4; //group_roles.name const U32 DB_GROUP_ROLE_NAME_STR_LEN = 20; const U32 DB_GROUP_ROLE_NAME_BUF_SIZE = DB_GROUP_ROLE_NAME_STR_LEN + 1; //group_roles.title const U32 DB_GROUP_ROLE_TITLE_STR_LEN = 20; const U32 DB_GROUP_ROLE_TITLE_BUF_SIZE = DB_GROUP_ROLE_TITLE_STR_LEN + 1; // group.charter text const S32 DB_GROUP_CHARTER_STR_LEN = 511; const S32 DB_GROUP_CHARTER_BUF_SIZE = 512; // group.officer_title varchar(20) // -also- // group.member_title varchar(20) const S32 DB_GROUP_TITLE_STR_LEN = 20; const S32 DB_GROUP_TITLE_BUF_SIZE = 21; // Since chat and im both dump into the database text message log, // they derive their max size from the same constant. const S32 MAX_MSG_STR_LEN = 1023; const S32 MAX_MSG_BUF_SIZE = 1024; // instant_message.message text const S32 DB_IM_MSG_STR_LEN = MAX_MSG_STR_LEN; const S32 DB_IM_MSG_BUF_SIZE = MAX_MSG_BUF_SIZE; // groupnotices const S32 DB_GROUP_NOTICE_SUBJ_STR_LEN = 63; const S32 DB_GROUP_NOTICE_SUBJ_STR_SIZE = 64; const S32 DB_GROUP_NOTICE_MSG_STR_LEN = MAX_MSG_STR_LEN - DB_GROUP_NOTICE_SUBJ_STR_LEN; const S32 DB_GROUP_NOTICE_MSG_STR_SIZE = MAX_MSG_BUF_SIZE - DB_GROUP_NOTICE_SUBJ_STR_SIZE; // log_text_message.message text const S32 DB_CHAT_MSG_STR_LEN = MAX_MSG_STR_LEN; const S32 DB_CHAT_MSG_BUF_SIZE = MAX_MSG_BUF_SIZE; // money_stipend.description varchar(254) const S32 DB_STIPEND_DESC_STR_LEN = 254; const S32 DB_STIPEND_DESC_BUF_SIZE = 255; // script_email_message.from_email varchar(78) const S32 DB_EMAIL_FROM_STR_LEN = 78; const S32 DB_EMAIL_FROM_BUF_SIZE = 79; // script_email_message.subject varchar(72) const S32 DB_EMAIL_SUBJECT_STR_LEN = 72; const S32 DB_EMAIL_SUBJECT_BUF_SIZE = 73; // system_globals.motd varchar(254) const S32 DB_MOTD_STR_LEN = 254; const S32 DB_MOTD_BUF_SIZE = 255; // Must be <= user_inventory_item.name so that calling cards work // First name + " " + last name...or a system assigned "from" name // instant_message.from_agent_name varchar(63) // -also- // user_mute.mute_agent_name varchar(63) const S32 DB_FULL_NAME_STR_LEN = 63; const S32 DB_FULL_NAME_BUF_SIZE = 64; // was USER_NAME_SIZE // user.username varchar(31) const S32 DB_FIRST_NAME_STR_LEN = 31; const S32 DB_FIRST_NAME_BUF_SIZE = 32; // was MAX_FIRST_NAME // user_last_name.name varchar(31) const S32 DB_LAST_NAME_STR_LEN = 31; const S32 DB_LAST_NAME_BUF_SIZE = 32; // was MAX_LAST_NAME // user.password varchar(100) const S32 DB_USER_PASSWORD_STR_LEN = 100; const S32 DB_USER_PASSWORD_BUF_SIZE = 101; // was MAX_PASSWORD // user.email varchar(254) const S32 DB_USER_EMAIL_ADDR_STR_LEN = 254; const S32 DB_USER_EMAIL_ADDR_BUF_SIZE = 255; // user.about text const S32 DB_USER_ABOUT_STR_LEN = 511; const S32 DB_USER_ABOUT_BUF_SIZE = 512; // user.fl_about_text text // Must be 255 not 256 as gets packed into message Variable 1 const S32 DB_USER_FL_ABOUT_STR_LEN = 254; const S32 DB_USER_FL_ABOUT_BUF_SIZE = 255; // user.profile_url text // Must be 255 not 256 as gets packed into message Variable 1 const S32 DB_USER_PROFILE_URL_STR_LEN = 254; const S32 DB_USER_PROFILE_URL_BUF_SIZE = 255; // user.want_to varchar(254) const S32 DB_USER_WANT_TO_STR_LEN = 254; const S32 DB_USER_WANT_TO_BUF_SIZE = 255; // user.skills varchar(254) const S32 DB_USER_SKILLS_STR_LEN = 254; const S32 DB_USER_SKILLS_BUF_SIZE = 255; // user_nv.name varchar(128) const S32 DB_NV_NAME_STR_LEN = 128; const S32 DB_NV_NAME_BUF_SIZE = 129; // user_start_location.location_name varchar(254) const S32 DB_START_LOCATION_STR_LEN = 254; const S32 DB_START_LOCATION_BUF_SIZE = 255; // money_tax_assessment.sim varchar(100) //const S32 DB_SIM_NAME_STR_LEN = 100; //const S32 DB_SIM_NAME_BUF_SIZE = 101; // born on date date const S32 DB_BORN_STR_LEN = 15; const S32 DB_BORN_BUF_SIZE = 16; // place.name const S32 DB_PLACE_NAME_LEN = 63; const S32 DB_PLACE_NAME_SIZE = 64; const S32 DB_PARCEL_NAME_LEN = 63; const S32 DB_PARCEL_NAME_SIZE = 64; // place.desc const S32 DB_PLACE_DESC_LEN = 255; const S32 DB_PLACE_DESC_SIZE = 256; const S32 DB_PARCEL_DESC_LEN = 255; const S32 DB_PARCEL_DESC_SIZE = 256; const S32 DB_PARCEL_MUSIC_URL_LEN = 255; const S32 DB_PARCEL_MEDIA_URL_LEN = 255; const S32 DB_PARCEL_MUSIC_URL_SIZE = 256; // date time that is easily human readable const S32 DB_DATETIME_STR_LEN = 35; const S32 DB_DATETIME_BUF_SIZE = 36; // date time that isn't easily human readable const S32 DB_TERSE_DATETIME_STR_LEN = 15; const S32 DB_TERSE_DATETIME_BUF_SIZE = 16; // indra.simulator constants const S32 DB_SIM_NAME_STR_LEN = 35; const S32 DB_SIM_NAME_BUF_SIZE = 36; const S32 DB_HOST_NAME_STR_LEN = 100; const S32 DB_HOST_NAME_BUF_SIZE = 101; const S32 DB_ESTATE_NAME_STR_LEN = 63; const S32 DB_ESTATE_NAME_BUF_SIZE = DB_ESTATE_NAME_STR_LEN + 1; // user_note.note const S32 DB_USER_NOTE_LEN = 1023; const S32 DB_USER_NOTE_SIZE = 1024; // pick.name const S32 DB_PICK_NAME_LEN = 63; const S32 DB_PICK_NAME_SIZE = 64; // pick.desc const S32 DB_PICK_DESC_LEN = 1023; const S32 DB_PICK_DESC_SIZE = 1024; #endif // LL_LLDBSTRINGS_H