File: README.storage

package info (click to toggle)
bnetd 0.4.25-6
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 4,516 kB
  • ctags: 7,224
  • sloc: ansic: 67,547; sh: 3,142; makefile: 796; python: 304; perl: 211; awk: 73
file content (69 lines) | stat: -rw-r--r-- 2,213 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69

README.storage

	This file contains information / requirements / design proposals
	for a storage API that abstracts the storage of user account data.

	Perhaps that will come in handy if we ever serve as many players
	and games as The Real Battle Net Itself (tm) ;-)


---------------------------------------------------------------------------
-
- *scratchpad*
-
---------------------------------------------------------------------------

Possible Backends:
	- plain directory - what we have now
	- hashed directory - user 000481 is saved in ${datadir}/1/4/8/000 etc.
	- (SQL) database backends - mysql, postgres etc.
	- CVS (hey, just kidding ;-) )

	- LDAP (Thanks, Marco Ziech)

---------------------------------------------------------------------------

Ross Combs <rocombs@cs.nmsu.edu>:

1) The code in bnetd hangs onto account pointers for long periods
   of time.
2) The code compares pointers to see if accounts are the same.
   Changing this would be a real pain.
3) Some of the account.c code doesn't relate to the flat-file
   implementation.

So what needs to happen is that an API should be extracted from
account.c which would allow implementation of various backends and
also satisfy the code requirements above.

---------------------------------------------------------------------------

Stuff to remember:

- configure.in :
	--with-storage-plain,    // what we've got now
	--with-storage-hashed,   // hashed directory - user 000481 is saved
                                 // in ${datadir}/1/4/8/000 etc.
	--with-storage-CVS,      // Hey, just kidding ;-)
	--with-storage-mysql,
	--with-storage-postgres,
	--with-storage-DB2,      // Hey, we want to play with the big boys ;-)
	--with-storage-LDAP,
	...

selection of necessary development libraries in configure.in

#ifdef WITH_POSTGRES
    register_storage("postgres")
#endif

---------------------------------------------------------------------------

Mihai RUSU <dizzy@roedu.net>:

> > - database backends - mysql, postgres etc.
> well if you go into that then ill start do the logging in a database.
> im thinking about game reports and even bnetd events.

---------------------------------------------------------------------------