Browse Source

Introduce some kind of versioning

tags/OPENTRACKER.WITH.BATCHSYNC
Dirk Engling 13 years ago
parent
commit
e767fae72a
27 changed files with 148 additions and 33 deletions
  1. +26
    -2
      Makefile
  2. +6
    -2
      opentracker.c
  3. +3
    -2
      opentracker.xcodeproj/project.pbxproj
  4. +5
    -1
      ot_accesslist.c
  5. +3
    -1
      ot_accesslist.h
  6. +5
    -1
      ot_clean.c
  7. +3
    -1
      ot_clean.h
  8. +5
    -1
      ot_fullscrape.c
  9. +3
    -1
      ot_fullscrape.h
  10. +5
    -1
      ot_http.c
  11. +3
    -1
      ot_http.h
  12. +5
    -1
      ot_iovec.c
  13. +3
    -1
      ot_iovec.h
  14. +5
    -1
      ot_mutex.c
  15. +3
    -1
      ot_mutex.h
  16. +16
    -1
      ot_stats.c
  17. +4
    -1
      ot_stats.h
  18. +5
    -1
      ot_sync.c
  19. +3
    -1
      ot_sync.h
  20. +9
    -3
      ot_udp.c
  21. +3
    -1
      ot_udp.h
  22. +5
    -1
      ot_vector.c
  23. +3
    -1
      ot_vector.h
  24. +5
    -1
      scan_urlencoded_query.c
  25. +4
    -2
      scan_urlencoded_query.h
  26. +5
    -1
      trackerlogic.c
  27. +3
    -1
      trackerlogic.h

+ 26
- 2
Makefile View File

@@ -1,4 +1,24 @@
# $Id: Makefile,v 1.43 2007/12/20 05:59:34 erdgeist Exp $

CC?=gcc

# Linux flavour
# PREFIX?=/opt/diet
# LIBOWFAT_HEADERS=$(PREFIX)/include
# LIBOWFAT_LIBRARY=$(PREIFX)/lib

# BSD flavour
PREFIX?=/usr/local
LIBOWFAT_HEADERS=$(PREFIX)/include/libowfat
LIBOWFAT_LIBRARY=$(PREIFX)/lib

# Debug flavour
# PREFIX?=..
# LIBOWFAT_HEADERS=$(PREFIX)/libowfat
# LIBOWFAT_LIBRARY=$(PREFIX)/libowfat

BINDIR?=$(PREFIX)/bin

#FEATURES =-DWANT_TRACKER_SYNC
#FEATURES+=-DWANT_BLACKLISTING
#FEATURES+=-DWANT_CLOSED_TRACKER
@@ -9,8 +29,9 @@ CC?=gcc

OPTS_debug=-g -ggdb #-pg # -fprofile-arcs -ftest-coverage
OPTS_production=-Os
CFLAGS+=-I../libowfat -Wall -pipe -Wextra #-pedantic -ansi
LDFLAGS+=-L../libowfat/ -lowfat -pthread -lz

CFLAGS+=-I$(LIBOWFAT_HEADERS) -Wall -pipe -Wextra #-pedantic -ansi
LDFLAGS+=-L$(LIBOWFAT_LIBRARY) -lowfat -pthread -lz

BINARY =opentracker
HEADERS=trackerlogic.h scan_urlencoded_query.h ot_mutex.h ot_stats.h ot_sync.h ot_vector.h ot_clean.h ot_udp.h ot_iovec.h ot_fullscrape.h ot_accesslist.h ot_http.h
@@ -40,3 +61,6 @@ $(BINARY).debug: $(OBJECTS_debug) $(HEADERS)

clean:
rm -rf opentracker opentracker.debug *.o *~

install:
install -m 755 opentracker $(BINDIR)

+ 6
- 2
opentracker.c View File

@@ -1,7 +1,8 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever.
Some of the stuff below is stolen from Fefes example libowfat httpd.
*/

$Id: opentracker.c,v 1.190 2007/12/20 05:59:34 erdgeist Exp $ */

/* System */
#include <string.h>
@@ -250,7 +251,7 @@ int main( int argc, char **argv ) {
#endif

while( scanon ) {
switch( getopt( argc, argv, ":i:p:A:P:d:r:"
switch( getopt( argc, argv, ":i:p:A:P:d:r:v"
#ifdef WANT_BLACKLISTING
"b:"
#elif defined( WANT_CLOSED_TRACKER )
@@ -273,6 +274,7 @@ int main( int argc, char **argv ) {
accesslist_blessip( tmpip, 0xffff ); /* Allow everything for now */
break;
case 'h': help( argv[0] ); exit( 0 );
case 'v': write( 2, static_inbuf, stats_return_tracker_version( static_inbuf )); exit( 0 );
default:
case '?': usage( argv[0] ); exit( 1 );
}
@@ -312,3 +314,5 @@ int main( int argc, char **argv ) {

return 0;
}

const char *g_version_opentracker_c = "$Source: /home/cvsroot/opentracker/opentracker.c,v $: $Revision: 1.190 $\n";

+ 3
- 2
opentracker.xcodeproj/project.pbxproj View File

@@ -39,10 +39,10 @@

/* Begin PBXFileReference section */
6520B7520D036AAF00A43B1F /* libowfat.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libowfat.a; path = ../libowfat/libowfat.a; sourceTree = SOURCE_ROOT; };
6520B8110D0E011000A43B1F /* liblibowfat.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = liblibowfat.a; sourceTree = BUILT_PRODUCTS_DIR; };
653A320A0CE7F475007F0D03 /* ot_accesslist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ot_accesslist.h; sourceTree = "<group>"; };
653A320B0CE7F475007F0D03 /* ot_accesslist.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ot_accesslist.c; sourceTree = "<group>"; };
653A56AC0CE201FF000CF140 /* opentracker */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = opentracker; sourceTree = BUILT_PRODUCTS_DIR; };
653A56AF0CE201FF000CF140 /* liblibowfat.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = liblibowfat.a; path = /Users/erdgeist/Coding/opentracker/build/Debug/liblibowfat.a; sourceTree = "<absolute>"; };
653A56B30CE28EC5000CF140 /* ot_iovec.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ot_iovec.h; sourceTree = "<group>"; };
653A56B40CE28EC5000CF140 /* ot_iovec.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ot_iovec.c; sourceTree = "<group>"; };
654A80840CD832FC009035DE /* opentracker.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = opentracker.c; sourceTree = "<group>"; };
@@ -124,6 +124,7 @@
children = (
653A56AC0CE201FF000CF140 /* opentracker */,
6520B7520D036AAF00A43B1F /* libowfat.a */,
6520B8110D0E011000A43B1F /* liblibowfat.a */,
);
name = Products;
sourceTree = "<group>";
@@ -182,7 +183,7 @@
);
name = libowfat;
productName = libowfat;
productReference = 653A56AF0CE201FF000CF140 /* liblibowfat.a */;
productReference = 6520B8110D0E011000A43B1F /* liblibowfat.a */;
productType = "com.apple.product-type.library.static";
};
8DD76FA90486AB0100D96B5E /* opentracker */ = {


+ 5
- 1
ot_accesslist.c View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

/* System */
#include <stdlib.h>
@@ -116,3 +118,5 @@ int accesslist_isblessed( char *ip, ot_permissions permissions ) {
return 1;
return 0;
}

const char *g_version_accesslist_c = "$Source: /home/cvsroot/opentracker/ot_accesslist.c,v $: $Revision: 1.5 $\n";

+ 3
- 1
ot_accesslist.h View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

#ifndef __OT_ACCESSLIST_H__
#define __OT_ACCESSLIST_H__


+ 5
- 1
ot_clean.c View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

/* System */
#include <stdlib.h>
@@ -129,3 +131,5 @@ void clean_init( void ) {
void clean_deinit( void ) {
pthread_cancel( thread_id );
}

const char *g_version_clean_c = "$Source: /home/cvsroot/opentracker/ot_clean.c,v $: $Revision: 1.6 $\n";

+ 3
- 1
ot_clean.h View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

#ifndef __OT_CLEAN_H__
#define __OT_CLEAN_H__


+ 5
- 1
ot_fullscrape.c View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

/* System */
#include <sys/uio.h>
@@ -223,3 +225,5 @@ static void fullscrape_make( int *iovec_entries, struct iovec **iovector, ot_tas
/* Release unused memory in current output buffer */
iovec_fixlast( iovec_entries, iovector, r );
}

const char *g_version_fullscrape_c = "$Source: /home/cvsroot/opentracker/ot_fullscrape.c,v $: $Revision: 1.16 $\n";

+ 3
- 1
ot_fullscrape.h View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

#ifndef __OT_FULLSCRAPE_H__
#define __OT_FULLSCRAPE_H__


+ 5
- 1
ot_http.c View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

/* System */
#include <sys/types.h>
@@ -568,3 +570,5 @@ ssize_t http_handle_request( const int64 client_socket, char *data, size_t recv_
http_senddata( client_socket, static_outbuf + reply_off, reply_size );
return reply_size;
}

const char *g_version_http_c = "$Source: /home/cvsroot/opentracker/ot_http.c,v $: $Revision: 1.7 $\n";

+ 3
- 1
ot_http.h View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

#ifndef __OT_HTTP_H__
#define __OT_HTTP_H__


+ 5
- 1
ot_iovec.c View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

/* System */
#include <sys/types.h>
@@ -71,3 +73,5 @@ size_t iovec_length( int *iovec_entries, struct iovec **iovector ) {
length += ((*iovector)[i]).iov_len;
return length;
}

const char *g_version_iovec_c = "$Source: /home/cvsroot/opentracker/ot_iovec.c,v $: $Revision: 1.4 $\n";

+ 3
- 1
ot_iovec.h View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

#ifndef __OT_IOVEC_H__
#define __OT_IOVEC_H__


+ 5
- 1
ot_mutex.c View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

/* System */
#include <pthread.h>
@@ -316,3 +318,5 @@ void mutex_deinit( ) {
pthread_cond_destroy(&tasklist_being_filled);
byte_zero( all_torrents, sizeof( all_torrents ) );
}

const char *g_version_mutex_c = "$Source: /home/cvsroot/opentracker/ot_mutex.c,v $: $Revision: 1.10 $\n";

+ 3
- 1
ot_mutex.h View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

#ifndef __OT_MUTEX_H__
#define __OT_MUTEX_H__


+ 16
- 1
ot_stats.c View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

/* System */
#include <stdlib.h>
@@ -334,6 +336,18 @@ static size_t stats_httperrors_txt ( char * reply ) {
ot_failed_request_counts[6] );
}

extern const char
*g_version_opentracker_c, *g_version_accesslist_c, *g_version_clean_c, *g_version_fullscrape_c, *g_version_http_c,
*g_version_iovec_c, *g_version_mutex_c, *g_version_stats_c, *g_version_sync_c, *g_version_udp_c, *g_version_vector_c,
*g_version_scan_urlencoded_query_c, *g_version_trackerlogic_c;

size_t stats_return_tracker_version( char *reply ) {
return sprintf( reply, "%s%s%s%s%s%s%s%s%s%s%s%s%s",
g_version_opentracker_c, g_version_accesslist_c, g_version_clean_c, g_version_fullscrape_c, g_version_http_c,
g_version_iovec_c, g_version_mutex_c, g_version_stats_c, g_version_sync_c, g_version_udp_c, g_version_vector_c,
g_version_scan_urlencoded_query_c, g_version_trackerlogic_c );
}

size_t return_stats_for_tracker( char *reply, int mode, int format ) {
format = format;
switch( mode ) {
@@ -418,3 +432,4 @@ void stats_deinit( ) {

}

const char *g_version_stats_c = "$Source: /home/cvsroot/opentracker/ot_stats.c,v $: $Revision: 1.18 $\n";

+ 4
- 1
ot_stats.h View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

#ifndef __OT_STATS_H__
#define __OT_STATS_H__
@@ -34,6 +36,7 @@ enum {

void stats_issue_event( ot_status_event event, int is_tcp, size_t event_data );
size_t return_stats_for_tracker( char *reply, int mode, int format );
size_t stats_return_tracker_version( char *reply );
void stats_init( );
void stats_deinit( );



+ 5
- 1
ot_sync.c View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

/* System */
#include <sys/types.h>
@@ -160,3 +162,5 @@ void sync_deliver( int64 socket ) {
}

#endif

const char *g_version_sync_c = "$Source: /home/cvsroot/opentracker/ot_sync.c,v $: $Revision: 1.5 $\n";

+ 3
- 1
ot_sync.h View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

#ifndef __OT_SYNC_H__
#define __OT_SYNC_H__


+ 9
- 3
ot_udp.c View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

/* System */
#include <string.h>
@@ -22,19 +24,21 @@ static const uint8_t g_static_connid[8] = { 0x23, 0x42, 0x05, 0x17, 0xde, 0x41,

static void udp_make_connectionid( uint32_t * connid, const char * remoteip ) {
/* Touch unused variable */
remoteip = remoteip;
(void)remoteip;

/* Use a static secret for now */
memcpy( connid, g_static_connid, 8 );
}

#if 0
static int udp_test_connectionid( const uint32_t * const connid, const char * remoteip ) {
/* Touch unused variable */
remoteip = remoteip;
(void)remoteip;

/* Test against our static secret */
return !memcmp( connid, g_static_connid, 8 );
}
#endif

/* UDP implementation according to http://xbtt.sourceforge.net/udp_tracker_protocol.html */
void handle_udp4( int64 serversocket ) {
@@ -133,3 +137,5 @@ void handle_udp4( int64 serversocket ) {
break;
}
}

const char *g_version_udp_c = "$Source: /home/cvsroot/opentracker/ot_udp.c,v $: $Revision: 1.10 $\n";

+ 3
- 1
ot_udp.h View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

#ifndef __OT_UDP_H__
#define __OT_UDP_H__


+ 5
- 1
ot_vector.c View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

/* System */
#include <stdlib.h>
@@ -108,3 +110,5 @@ void vector_remove_torrent( ot_vector *vector, ot_torrent *match ) {
vector->data = realloc( vector->data, vector->space * sizeof( ot_torrent ) );
}
}

const char *g_version_vector_c = "$Source: /home/cvsroot/opentracker/ot_vector.c,v $: $Revision: 1.3 $\n";

+ 3
- 1
ot_vector.h View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

#ifndef __OT_VECTOR_H__
#define __OT_VECTOR_H__


+ 5
- 1
scan_urlencoded_query.c View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

#include "scan.h"
#include "scan_urlencoded_query.h"
@@ -134,3 +136,5 @@ ssize_t scan_fixed_ip( char *data, size_t len, unsigned char ip[4] ) {
}
return len;
}

const char *g_version_scan_urlencoded_query_c = "$Source: /home/cvsroot/opentracker/scan_urlencoded_query.c,v $: $Revision: 1.25 $\n";

+ 4
- 2
scan_urlencoded_query.h View File

@@ -1,6 +1,8 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */

It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */
#ifndef __SCAN_URLENCODED_QUERY_H__
#define __SCAN_URLENCODED_QUERY_H__



+ 5
- 1
trackerlogic.c View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

/* System */
#include <stdlib.h>
@@ -354,3 +356,5 @@ void trackerlogic_deinit( void ) {
clean_deinit( );
mutex_deinit( );
}

const char *g_version_trackerlogic_c = "$Source: /home/cvsroot/opentracker/trackerlogic.c,v $: $Revision: 1.100 $\n";

+ 3
- 1
trackerlogic.h View File

@@ -1,5 +1,7 @@
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
It is considered beerware. Prost. Skol. Cheers or whatever. */
It is considered beerware. Prost. Skol. Cheers or whatever.
$id$ */

#ifndef __OT_TRACKERLOGIC_H__
#define __OT_TRACKERLOGIC_H__


Loading…
Cancel
Save