Commit 8eaf7721 authored by Per Cederqvist's avatar Per Cederqvist
Browse files

Added references to Bugzilla for all FIXME comments.

parent 37a966f7
/*
* $Id: dbck.c,v 0.61 2000/09/06 19:54:30 ceder Exp $
* $Id: dbck.c,v 0.62 2001/11/03 18:03:51 ceder Exp $
* Copyright (C) 1991-2000 Lysator Academic Computer Association.
*
* This file is part of the LysKOM server.
......@@ -35,7 +35,7 @@
static const char *
rcsid = "$Id: dbck.c,v 0.61 2000/09/06 19:54:30 ceder Exp $";
rcsid = "$Id: dbck.c,v 0.62 2001/11/03 18:03:51 ceder Exp $";
#include "rcs.h"
USE(rcsid);
......@@ -732,7 +732,7 @@ check_texts(void)
max_text = ct;
}
/* no_of_marks is not yet checked. */
/* FIXME (bug 147): no_of_marks is not yet checked. */
errors += check_misc_infos(ct, ctp);
}
}
......
/*
* $Id: disk-end-of-atomic.c,v 0.20 1999/06/19 18:09:52 ceder Exp $
* $Id: disk-end-of-atomic.c,v 0.21 2001/11/03 18:03:50 ceder Exp $
* Copyright (C) 1991-1994, 1998-1999 Lysator Academic Computer Association.
*
* This file is part of the LysKOM server.
......@@ -43,7 +43,7 @@
static const char *
rcsid = "$Id: disk-end-of-atomic.c,v 0.20 1999/06/19 18:09:52 ceder Exp $";
rcsid = "$Id: disk-end-of-atomic.c,v 0.21 2001/11/03 18:03:50 ceder Exp $";
#include "rcs.h"
USE(rcsid);
......@@ -71,7 +71,7 @@ end_of_atomic( Bool idle )
free_tmp();
/* FIXME-- make limit_text_stat smarter instead. */
/* FIXME (bug 148): make limit_text_stat smarter instead. */
if (limit++ > 100)
{
cache_limit_size();
......
/*
* $Id: internal-connections.c,v 0.44 2000/09/06 19:54:31 ceder Exp $
* $Id: internal-connections.c,v 0.45 2001/11/03 18:03:50 ceder Exp $
* Copyright (C) 1991-1994, 1996-2000 Lysator Academic Computer Association.
*
* This file is part of the LysKOM server.
......@@ -35,7 +35,7 @@
static const char *
rcsid = "$Id: internal-connections.c,v 0.44 2000/09/06 19:54:31 ceder Exp $";
rcsid = "$Id: internal-connections.c,v 0.45 2001/11/03 18:03:50 ceder Exp $";
#include "rcs.h"
USE(rcsid);
......@@ -291,7 +291,7 @@ kill_client(Connection *cp)
if (!s_empty(cp->dummy_aux_item.data))
kom_log("kill_client(): unexpected dummy_aux_item string remains.\n");
/* FIXME: Check for remaining data in aux-item structures */
/* FIXME (bug 149): Check for remaining data in aux-item structures */
sfree(cp);
--no_of_allocated_connections;
......
/*
* $Id: internal-services.h,v 0.10 1999/05/24 09:38:27 ceder Exp $
* $Id: internal-services.h,v 0.11 2001/11/03 18:03:50 ceder Exp $
* Copyright (C) 1991-1992, 1994-1995, 1998-1999 Lysator Academic Computer Association.
*
* This file is part of the LysKOM server.
......@@ -23,7 +23,7 @@
* Please mail bug reports to bug-lyskom@lysator.liu.se.
*/
/*
* $Id: internal-services.h,v 0.10 1999/05/24 09:38:27 ceder Exp $
* $Id: internal-services.h,v 0.11 2001/11/03 18:03:50 ceder Exp $
*
* server/services.h
*
......@@ -34,11 +34,11 @@
* en av{ndare kom p} att han inte ville ha texten kvar)
*
* Funktionerna i denna fil har kontrollerar inte att ACTPERS har r{tt att
* g|ra det som g|rs. +++FIXME--translate to english
* g|ra det som g|rs. FIXME (bug 150): translate to english
*/
/* FIXME: remove logins_allowed, or find out if it can be set. */
/* FIXME (bug 151): remove logins_allowed, or find out if it can be set. */
extern Bool logins_allowed; /* Defined in server/services.c */
extern Success
......
......@@ -138,7 +138,10 @@ sparse_locate_value(const struct l2g_block_info *binfo,
assert(!is_empty(binfo));
assert(!is_dense(binfo));
/* FIXME: implement a binary search instead. */
/* We could to this as a binary search instead, but since a block
is fairly small, it isn't certain that it would be a gain. If
profiling shows that this is a hot spot, a binary search should
be tried. */
for (i = 0; i < binfo->first_free && binfo->key_block[i] < lno; ++i)
continue;
......@@ -354,7 +357,7 @@ find_block(const Local_to_global *l2g, Local_text_no lno)
binfo = &(l2g->blocks[l2g->num_blocks - 1]);
/* Find the block where lno *could* be. */
/* FIXME: Binary search? */
/* FIXME (bug 152): Binary search? */
while (binfo > l2g->blocks)
{
if (lno >= binfo->start)
......@@ -642,7 +645,7 @@ l2g_copy(Local_to_global *dest, const Local_to_global *src)
const struct l2g_block_info *binfo;
int i;
/* FIXME: More efficient code */
/* FIXME (bug 153): More efficient code */
l2g_clear(dest);
for (binfo = src->blocks; binfo < src->blocks + src->num_blocks; ++binfo)
......@@ -1029,8 +1032,8 @@ l2g_delete_global_in_sorted(Local_to_global *l2g,
/* This implementation performs a linear search through the list,
but since we know that both the key and the data are sorted in
ascending order we could do a binary search instead.
FIXME: profile the code and se if it is worthwhile to implement
something fancier. */
FIXME (bug 154): profile the code and se if it is worthwhile to
implement something fancier. */
L2g_iterator iter;
......
/*
* $Id: person.c,v 0.61 2001/09/30 16:52:01 ceder Exp $
* $Id: person.c,v 0.62 2001/11/03 18:03:50 ceder Exp $
* Copyright (C) 1991-1999, 2001 Lysator Academic Computer Association.
*
* This file is part of the LysKOM server.
......@@ -35,7 +35,7 @@
#endif
static const char *
rcsid = "$Id: person.c,v 0.61 2001/09/30 16:52:01 ceder Exp $";
rcsid = "$Id: person.c,v 0.62 2001/11/03 18:03:50 ceder Exp $";
#include "rcs.h"
USE(rcsid);
......@@ -628,14 +628,20 @@ create_person_generic ( const String name,
if ( cached_create_person( new_user ) == FAILURE )
{
cached_delete_conf( new_user );
mark_conference_as_changed( new_user ); /*FIXME!: Will restart_kom */
/* FIXME (bug 159): The next line will call restart_kom(). */
mark_conference_as_changed(new_user);
return 0;
}
if ( ( pers_p = cached_get_person_stat( new_user )) == NULL )
{
cached_delete_conf( new_user );
mark_conference_as_changed( new_user ); /*FIXME!: Will restart_kom */
/* FIXME (bug 159): The next line will call restart_kom(). */
mark_conference_as_changed(new_user);
restart_kom("create_person() - can't get pers_stat");
}
......@@ -670,7 +676,7 @@ create_person_generic ( const String name,
new_user,
TRUE) != OK)
{
/* FIXME: Conf_no leak: We create a person, check the
/* FIXME (bug 160): Conf_no leak: We create a person, check the
aux-items, determine that the aux-items are bogus, and
immediately delete the person. This leaks a conference
number. We can live with that, but it isn't pretty. */
......@@ -726,7 +732,7 @@ create_person(const String name,
pers = create_person_generic(name, passwd, conf_aux, flags, FALSE);
if (pers != 0)
{
/* FIXME: Send asynch message */
/* FIXME (bug 93): Send asynch message */
}
return pers;
......@@ -812,7 +818,6 @@ get_person_stat_old (Pers_no person,
}
/* /// */
extern Success
get_created_texts(Pers_no pers_no,
Local_text_no first,
......@@ -999,10 +1004,10 @@ set_passwd (Pers_no person,
* Can be done before login. Will return EMPTY_MEMBERSHIP if VICTIM
* has his unread_is_secret-flag set. This can not be distinguished
* from the case when VICTIM has not read any texts in CONF_NO. This
* is a feature, not a bug. (At least I think so. /ceder+++)
* is a feature, not a bug. (FIXME (bug 161): At least I think so. /ceder)
*
* (*** Well, I've changed my mind. This call is full of security holes.
* /ceder)
* FIXME (bug 161): Well, I've changed my mind. This call is full of
* security holes. /ceder
*
* Will fail if VICTIM is not a member of CONF_NO.
*/
......
/*
* $Id: prot-a-parse.c,v 0.46 2001/10/28 11:40:05 ceder Exp $
* $Id: prot-a-parse.c,v 0.47 2001/11/03 18:03:49 ceder Exp $
* Copyright (C) 1991-2000 Lysator Academic Computer Association.
*
* This file is part of the LysKOM server.
......@@ -34,7 +34,7 @@
#endif
static const char *
rcsid = "$Id: prot-a-parse.c,v 0.46 2001/10/28 11:40:05 ceder Exp $";
rcsid = "$Id: prot-a-parse.c,v 0.47 2001/11/03 18:03:49 ceder Exp $";
#include "rcs.h"
USE(rcsid);
......@@ -370,7 +370,9 @@ prot_a_parse_string(Connection *client,
client->first_to_parse += 1 + hptr;
client->string_parse_pos = 1;
result->len = client_len; /* +++ Transfer */
/* Transfer the total length across the restart point, by
storing it in result->len. */
result->len = client_len;
/* Fall through */
case 1:
client_len = result->len;
......@@ -390,7 +392,15 @@ prot_a_parse_string(Connection *client,
s_mem_crea_str(result,
client->unparsed.string + client->first_to_parse,
truncated_len);
result->len = client_len; /* Ugly! +++ */
/* Transfer the length across the restart point. This is
slightly ugly: if the string is truncated, we are not
allowed to access all of the string! */
/* FIXME (bug 162): It would be better to add a client_len
field to the Connection struct. Adding four bytes to that
struct won't measurably change the size of the lyskomd
process, and it will make this code easier to maintain. */
result->len = client_len;
client->first_to_parse += truncated_len;
client->string_parse_pos = 2;
......@@ -713,8 +723,7 @@ prot_a_parse_time_date(Connection *client,
{
/* A time never occur inside a string, and a string never occur
inside a time. Thus I use string_parse_pos here instead of
inventing a new variable. Lacgen will allocate variables as
needed... */
inventing a new variable. */
switch( client->string_parse_pos )
{
......
/*
* $Id: regex-match.c,v 1.28 1999/07/10 22:52:34 ceder Exp $
* $Id: regex-match.c,v 1.29 2001/11/03 18:03:49 ceder Exp $
* Copyright (C) 1992-1999 Lysator Academic Computer Association.
*
* This file is part of the LysKOM server.
......@@ -33,7 +33,7 @@
#endif
static const char *
rcsid = "$Id: regex-match.c,v 1.28 1999/07/10 22:52:34 ceder Exp $";
rcsid = "$Id: regex-match.c,v 1.29 2001/11/03 18:03:49 ceder Exp $";
#include "rcs.h"
USE(rcsid);
......@@ -77,7 +77,8 @@ lookup_regexp (Connection *conn,
const char *errmsg;
Conf_type type;
/* FIXME: Unnecessary to allocate this much if only one conference matches. */
/* FIXME (bug 163): It is unnecessary to allocate this much if
only one conference matches. */
result->confs = tmp_alloc (cached_no_of_existing_conferences()
* sizeof(Conf_z_info));
result->no_of_confs = 0;
......
/*
* $Id: server-config.c,v 0.71 1999/10/28 13:18:10 byers Exp $
* $Id: server-config.c,v 0.72 2001/11/03 18:03:49 ceder Exp $
* Copyright (C) 1991-1999 Lysator Academic Computer Association.
*
* This file is part of the LysKOM server.
......@@ -37,7 +37,7 @@
#endif
static const char *
rcsid = "$Id: server-config.c,v 0.71 1999/10/28 13:18:10 byers Exp $";
rcsid = "$Id: server-config.c,v 0.72 2001/11/03 18:03:49 ceder Exp $";
#include "rcs.h"
USE(rcsid);
......@@ -538,7 +538,7 @@ read_configuration(const char *conf_file)
param_name(&param.saved_items_per_call));
}
/* FIXME///+++ Check config parameters for sanity */
/* FIXME (bug 165): Check config parameters for sanity */
if (err)
restart_kom("Please fix the above configuration errors.\n");
......
/*
* $Id: simple-cache.c,v 0.91 2000/09/06 19:54:33 ceder Exp $
* $Id: simple-cache.c,v 0.92 2001/11/03 18:03:48 ceder Exp $
* Copyright (C) 1991-2000 Lysator Academic Computer Association.
*
* This file is part of the LysKOM server.
......@@ -40,7 +40,7 @@
#endif
static const char *
rcsid = "$Id: simple-cache.c,v 0.91 2000/09/06 19:54:33 ceder Exp $";
rcsid = "$Id: simple-cache.c,v 0.92 2001/11/03 18:03:48 ceder Exp $";
#include "rcs.h"
USE(rcsid);
......@@ -94,11 +94,11 @@ USE(rcsid);
#include "server-time.h"
/*
* Possible improvements: +++
* When there are consecutive items in file A that shall be copied
* to file B, copy them in one transfer (up to a certain limit).
* Possible improvements:
*
* In pre_sync: compute size of, and allocate disk space for file B.
* FIXME (bug 167): When there are consecutive items in file A that
* shall be copied to file B, copy them in one transfer (up to a
* certain limit).
*/
/*
......@@ -243,7 +243,7 @@ static Matching_info *find_matching_info(Conf_no conf_no);
static Person *
read_person(FILE *fp,
long pos,
long UNUSED(size)) /* FIXME: should sanity-check the size */
long UNUSED(size)) /* FIXME (bug 168): sanity-check the size */
{
Person *p;
long dummy;
......@@ -265,7 +265,7 @@ read_person(FILE *fp,
static Conference *
read_conference(FILE *fp,
long pos,
long UNUSED(size)) /* FIXME: should sanity-check the size */
long UNUSED(size)) /* FIXME (bug 169): sanity-check the size */
{
Conference *c;
long dummy;
......@@ -286,7 +286,7 @@ read_conference(FILE *fp,
static Text_stat *
read_text_stat(FILE *fp,
long pos,
long UNUSED(size)) /* FIXME: should sanity-check the size */
long UNUSED(size)) /* FIXME (bug 170): sanity-check the size */
{
Text_stat *t;
long dummy;
......@@ -433,6 +433,7 @@ cached_no_of_existing_conferences(void)
places) to allocate an array this large, and that is pretty
stupid if many conferences have been deleted. But it is no big
deal. Not yet, anyhow... */
/* FIXME (bug 164): We should return a better estimate. */
}
/*
......@@ -896,7 +897,7 @@ cached_conf_exists(Conf_no conf_no)
*/
/*
* +++ Should return Success.
* FIXME (bug 171): cached_get_text() should return Success.
*/
extern String
cached_get_text( Text_no text )
......@@ -1340,6 +1341,10 @@ find_matching_info(Conf_no conf_no)
{
Matching_info *info, key;
/* FIXME (bug 172): The comment below, the fact that bsearch() is
used, and the comment above find_matching_info_compare() seems
to indicate that cleanup is required here. */
/* FIXME: Do a binary search here! The search must be able to
FIXME: deal with NULL entries. We could do this with a regular
FIXME: bearch and a final check that the entry has a non-NULL
......@@ -1391,11 +1396,14 @@ rebuild_matching_info_entry(Conf_no conf_no)
/* Deleted a conference. Clear everything but the conf_no */
/*
FIXME: We should compress the table by moving the entries
FIXME: Above the deleted one down one step. This will save
FIXME: a little time in lookup, and make realloc the next
FIXME: time someone creates a conference not have to move
FIXME: memory.
FIXME (bug 173): We should compress the table by moving
the entries above the deleted one down one step. This
will save a little time in lookup, and make realloc the
next time someone creates a conference not have to move
memory.
Warning: doing this might interfere with the comments
refered to by bug 172.
*/
mtch->name = EMPTY_STRING;
mtch->tokens = NULL;
......@@ -1514,8 +1522,8 @@ cached_lookup_name(const String name,
Parse_info tmp;
int i;
/* FIXME: It is a waste of resources to include persons here
if this lookup is performed due to a lookup-z-name that
/* FIXME (bug 174): It is a waste of resources to include persons
here if this lookup is performed due to a lookup-z-name that
only requests conferences, and vice versa. */
tmp = parse(name, match_table, FALSE, FALSE,
s_fcrea_str(WHITESPACE), DEFAULT_COLLAT_TAB);
......@@ -1530,7 +1538,7 @@ cached_lookup_name(const String name,
if ( tmp.no_of_matches == 1 && tmp.indexes[ 0 ] == -1 )
{
/* Return the entire list. */
/* FIXME: This allocates too much data if some conferences
/* FIXME (bug 175): This allocates too much data if some conferences
have been deleted. */
result->no_of_conf_nos = 0;
result->conf_nos = tmp_alloc(no_of_match_info * sizeof(Conf_no));
......@@ -2865,7 +2873,7 @@ limit_pers(void)
unlink_pers_lru(node);
free_person (node->ptr);
node->ptr = NULL;
/* +++ delete cache-node if non-existent. */
/* FIXME (bug 95): delete cache-node if non-existent. */
}
node = next_node;
}
......@@ -2899,7 +2907,7 @@ limit_conf(void)
unlink_conf_lru(node);
free_conference (node->ptr);
node->ptr = NULL;
/* FIXME: +++ delete if non-existent. */
/* FIXME (bug 95): delete if non-existent. */
}
node = next_node;
}
......@@ -2934,7 +2942,7 @@ limit_text_stat(void)
unlink_text_lru(node);
free_text_stat (node->ptr);
node->ptr = NULL;
/* +++ delete if non-existent. */
/* FIXME (bug 95): delete if non-existent. */
}
node = next_node;
}
......
/*
* $Id: text-garb.c,v 0.36 2000/09/06 19:54:33 ceder Exp $
* $Id: text-garb.c,v 0.37 2001/11/03 18:03:48 ceder Exp $
* Copyright (C) 1991-1995, 1997-2000 Lysator Academic Computer Association.
*
* This file is part of the LysKOM server.
......@@ -34,7 +34,7 @@
#endif
static const char *
rcsid = "$Id: text-garb.c,v 0.36 2000/09/06 19:54:33 ceder Exp $";
rcsid = "$Id: text-garb.c,v 0.37 2001/11/03 18:03:48 ceder Exp $";
#include "rcs.h"
USE(rcsid);
......@@ -70,7 +70,7 @@ BUGDECL;
/*
* This comment is a description of how this _could_ be done in a more
* efficient way. It is not yet implemented. Design by Inge Wallin
* and Per Cederqvist 1992-10-07. +++FIXME.
* and Per Cederqvist 1992-10-07. FIXME (bug 176).
*
* Today, all text statuses are read into the core during the garbage
* collection phase. Due to step 3 below we think that we can reduce
......
/*
* $Id: updateLysKOM.c,v 1.15 2001/09/30 16:52:00 ceder Exp $
* $Id: updateLysKOM.c,v 1.16 2001/11/03 18:03:48 ceder Exp $
* Copyright (C) 1994-1995, 1998-1999, 2001 Lysator Academic Computer Association.
*
* This file is part of the LysKOM server.
......@@ -129,7 +129,7 @@ checkstatus(FILE *fp,
}
if (strchr(lbuf, '\n'))
*strchr(lbuf, '\n') = '\0';
/* FIXME: "Reminder:" is taken to be an email address. */
/* FIXME (bug 185): "Reminder:" is taken to be an email address. */
sprintf(buf2, "echo 'Reminder: LysKOM is still not running.'|mail %s",
lbuf);
if (system(buf2) != 0)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment