Subversion Repositories wimsdev

Rev

Rev 14329 | Rev 15847 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
10 reyssat 1
/*    Copyright (C) 1998-2003 XIAO, Gang of Universite de Nice - Sophia Antipolis
2
 *
3
 *  This program is free software; you can redistribute it and/or modify
4
 *  it under the terms of the GNU General Public License as published by
5
 *  the Free Software Foundation; either version 2 of the License, or
6
 *  (at your option) any later version.
7
 *
8
 *  This program is distributed in the hope that it will be useful,
9
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
10
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11
 *  GNU General Public License for more details.
12
 *
13
 *  You should have received a copy of the GNU General Public License
14
 *  along with this program; if not, write to the Free Software
15
 *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
16
 */
17
 
18
/* WWW interactive multipurpose server, header definitions */
19
 
20
#ifndef wimsdef_h
8185 bpr 21
#define wimsdef_h
22
/* maximal (multi-)line length. */
8159 bpr 23
#define MAX_LINELEN 45000
8185 bpr 24
/* limit of items in a list; will never exceed MAX_LINELEN/2. */
10 reyssat 25
#define MAX_LIST 8192
8185 bpr 26
/* maximal name length */
10 reyssat 27
#define MAX_NAMELEN 63
8185 bpr 28
/* maximal file name length, complete path. */
10 reyssat 29
#define MAX_FNAME 199
8185 bpr 30
/* maximal module name length. */
10 reyssat 31
#define MAX_MODULELEN 100
8185 bpr 32
/* maximal number of resident executions */
10 reyssat 33
#define MAX_MULTIEXEC 4
8185 bpr 34
/* maximal file length for webget */
10 reyssat 35
#define MAX_WEBGETFLEN (32*1024*1024)
8185 bpr 36
/* max length of class name */
10 reyssat 37
#define MAX_CLASSLEN 31
8185 bpr 38
/* max length of session name */
10 reyssat 39
#define MAX_SESSIONLEN 23
8339 bpr 40
/* max number of exercises in a class (sheets and exams)
41
 * if it is greater than MAX_EXOS * MAX_SHEETS + MAX_EXAMS,
42
 * the limitation is not useful
43
 */
10 reyssat 44
#define MAX_CLASSEXOS 2048
8339 bpr 45
/* MAX_EXOS and MAX_SHEETS are not modifiable:
46
 * look at 0xFF00 in Wimslogd/cache.c, Wimslogd/wimslogdscore.c
47
 * look at  >>8 in Wimslogd/wimslogdscore.c, score.c
48
 * look at 255 in score.c, 256 in variables.c
12540 bpr 49
 * it must be also less than 99 to be sure that some sessions filename
50
   do not cause buffer otherflow (see exam.c)
8339 bpr 51
 */
8185 bpr 52
/* max number of exercises in a sheet or exam; not modifiable */
9107 bpr 53
#define MAX_EXOS 64
8185 bpr 54
/* max number of sheets; not modifiable */
10 reyssat 55
#define MAX_SHEETS 64
14328 guerimand 56
/* max number of freeworks; */
57
#define MAX_FREEWORKS 64
14329 guerimand 58
/* max number of user in class to use module grades; */
59
#define MAX_USERFORGRADES 200
8339 bpr 60
/* max number of exams; not used except in Misc/exostat and in adm modules */
13298 bpr 61
#define MAX_EXAMS 80
8368 bpr 62
/* max number of votes */
63
#define MAX_VOTES 64
64
/* max numbers of replies in OEF */
65
#define MAX_OEFREPLIES 100
66
/* max numbers of choices in OEF */
67
#define MAX_OEFCHOICES 30
12021 guerimand 68
/* max number of values for one techvar*/
69
#define MAX_TECHVARVAL 20
15740 guerimand 70
/* max limit of number of techvar (in each level of struture ) */
71
#define MAX_LTECHVAR 64
8185 bpr 72
/* max length of data files: records, activities, definitions. */
10 reyssat 73
#define MAX_FILELEN (2048*1024-1)
8185 bpr 74
/* max number of filewrite calls in one request */
13897 bpr 75
#define MAX_FWRITE 64
8185 bpr 76
/* max total size of filewrite in one request */
10 reyssat 77
#define MAX_FWRITE_SIZE (64*1024)
8185 bpr 78
/* max languages on a site, hard limit */
79
#define MAX_LANGUAGES 32
80
/* max number of lines in a work file */
81
/* Limit for datafield cache */
10 reyssat 82
#define LINE_LIMIT 16384
8185 bpr 83
/* size of cached datafields */
10 reyssat 84
#define DATAFIELD_LIMIT 16384
8286 bpr 85
/* max required points */
12310 bpr 86
#define MAX_REQUIRE 200
12273 bpr 87
/* lengthmax of the seed as a char */
12422 bpr 88
#define SEEDSIZE 12
12302 bpr 89
/* maximum of the number of seed/score used in getseed*/
12418 bpr 90
#define MAX_SCORESEED 70
91
/* maximum of the number of exercises presented with the same seed
92
  if it is changed, search for MAX_SEEDSCORE in public_html
93
  and change the value (in non adm modules)
94
*/
95
#define MAX_SEEDSCORE 6
12933 guerimand 96
/* maximum of complementary regvars*/
97
#define MAX_REGVARS 10
8185 bpr 98
/* temporary log file */
99
#define TEMP_LOG_FILE "../log/temp.log"
100
/* Tag string for randfile */
101
#define tag_string "\n:"
102
 
103
/* Define current version of the server here */
10 reyssat 104
#define wims_version PACKAGE_VERSION
105
#ifdef VERSION_DATE
106
  #define wims_version_date VERSION_DATE
107
#else
108
  #define wims_version_date ""
109
#endif
110
 
111
#define SHORTSWNAME "WIMS"
112
#define LONGSWNAME "WWW Interactive Multipurpose Server"
12273 bpr 113
#define SEEDSCORES (2*MAX_SCORESEED*SEEDSIZE)
114
typedef struct scoreresult {
12295 bpr 115
  unsigned short int num, pad, seedlastcnt;
12273 bpr 116
  float require, weight, score, mean, last, try, best, level, new, seedscorelast;
117
  char seedlast[SEEDSIZE];
118
  char seedscores[SEEDSCORES];
10 reyssat 119
 
120
} scoreresult;
121
 
122
#endif