mirror of
https://github.com/transmission/transmission.git
synced 2025-12-24 12:28:52 +00:00
Follow more common whitespace style conventions in the C code (libtransmission, daemon, utils, cli, gtk).
This commit is contained in:
195
utils/create.c
195
utils/create.c
@@ -11,9 +11,9 @@
|
||||
*/
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdio.h> /* fprintf() */
|
||||
#include <stdio.h> /* fprintf () */
|
||||
#include <stdlib.h> /* EXIT_FAILURE */
|
||||
#include <unistd.h> /* getcwd() */
|
||||
#include <unistd.h> /* getcwd () */
|
||||
|
||||
#include <libtransmission/transmission.h>
|
||||
#include <libtransmission/makemeta.h>
|
||||
@@ -43,127 +43,166 @@ static tr_option options[] =
|
||||
};
|
||||
|
||||
static const char *
|
||||
getUsage( void )
|
||||
getUsage (void)
|
||||
{
|
||||
return "Usage: " MY_NAME " [options] <file|directory>";
|
||||
return "Usage: " MY_NAME " [options] <file|directory>";
|
||||
}
|
||||
|
||||
static int
|
||||
parseCommandLine( int argc, const char ** argv )
|
||||
parseCommandLine (int argc, const char ** argv)
|
||||
{
|
||||
int c;
|
||||
const char * optarg;
|
||||
int c;
|
||||
const char * optarg;
|
||||
|
||||
while(( c = tr_getopt( getUsage( ), argc, argv, options, &optarg )))
|
||||
while ((c = tr_getopt (getUsage (), argc, argv, options, &optarg)))
|
||||
{
|
||||
switch( c )
|
||||
switch (c)
|
||||
{
|
||||
case 'V': showVersion = true; break;
|
||||
case 'p': isPrivate = true; break;
|
||||
case 'o': outfile = optarg; break;
|
||||
case 'c': comment = optarg; break;
|
||||
case 't': if( trackerCount + 1 < MAX_TRACKERS ) {
|
||||
trackers[trackerCount].tier = trackerCount;
|
||||
trackers[trackerCount].announce = (char*) optarg;
|
||||
++trackerCount;
|
||||
}
|
||||
break;
|
||||
case TR_OPT_UNK: infile = optarg; break;
|
||||
default: return 1;
|
||||
case 'V':
|
||||
showVersion = true;
|
||||
break;
|
||||
|
||||
case 'p':
|
||||
isPrivate = true;
|
||||
break;
|
||||
|
||||
case 'o':
|
||||
outfile = optarg;
|
||||
break;
|
||||
|
||||
case 'c':
|
||||
comment = optarg;
|
||||
break;
|
||||
|
||||
case 't':
|
||||
if (trackerCount + 1 < MAX_TRACKERS)
|
||||
{
|
||||
trackers[trackerCount].tier = trackerCount;
|
||||
trackers[trackerCount].announce = (char*) optarg;
|
||||
++trackerCount;
|
||||
}
|
||||
break;
|
||||
|
||||
case TR_OPT_UNK:
|
||||
infile = optarg;
|
||||
break;
|
||||
|
||||
default:
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static char*
|
||||
tr_getcwd( void )
|
||||
tr_getcwd (void)
|
||||
{
|
||||
char * result;
|
||||
char buf[2048];
|
||||
char * result;
|
||||
char buf[2048];
|
||||
|
||||
#ifdef WIN32
|
||||
result = _getcwd( buf, sizeof( buf ) );
|
||||
result = _getcwd (buf, sizeof (buf));
|
||||
#else
|
||||
result = getcwd( buf, sizeof( buf ) );
|
||||
result = getcwd (buf, sizeof (buf));
|
||||
#endif
|
||||
if( result == NULL )
|
||||
|
||||
if (result == NULL)
|
||||
{
|
||||
fprintf( stderr, "getcwd error: \"%s\"", tr_strerror( errno ) );
|
||||
*buf = '\0';
|
||||
fprintf (stderr, "getcwd error: \"%s\"", tr_strerror (errno));
|
||||
*buf = '\0';
|
||||
}
|
||||
return tr_strdup( buf );
|
||||
|
||||
return tr_strdup (buf);
|
||||
}
|
||||
|
||||
int
|
||||
main( int argc, char * argv[] )
|
||||
main (int argc, char * argv[])
|
||||
{
|
||||
char * out2 = NULL;
|
||||
tr_metainfo_builder * b = NULL;
|
||||
char * out2 = NULL;
|
||||
tr_metainfo_builder * b = NULL;
|
||||
|
||||
tr_setMessageLevel( TR_MSG_ERR );
|
||||
tr_setMessageLevel (TR_MSG_ERR);
|
||||
|
||||
if( parseCommandLine( argc, (const char**)argv ) )
|
||||
return EXIT_FAILURE;
|
||||
if (parseCommandLine (argc, (const char**)argv))
|
||||
return EXIT_FAILURE;
|
||||
|
||||
if( showVersion ) {
|
||||
fprintf( stderr, MY_NAME" "LONG_VERSION_STRING"\n" );
|
||||
return 0;
|
||||
if (showVersion)
|
||||
{
|
||||
fprintf (stderr, MY_NAME" "LONG_VERSION_STRING"\n");
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
if( !infile )
|
||||
if (!infile)
|
||||
{
|
||||
fprintf( stderr, "ERROR: No input file or directory specified.\n" );
|
||||
tr_getopt_usage( MY_NAME, getUsage( ), options );
|
||||
fprintf( stderr, "\n" );
|
||||
return EXIT_FAILURE;
|
||||
fprintf (stderr, "ERROR: No input file or directory specified.\n");
|
||||
tr_getopt_usage (MY_NAME, getUsage (), options);
|
||||
fprintf (stderr, "\n");
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
if( outfile == NULL )
|
||||
if (outfile == NULL)
|
||||
{
|
||||
char * base = tr_basename( infile );
|
||||
char * end = tr_strdup_printf( "%s.torrent", base );
|
||||
char * cwd = tr_getcwd( );
|
||||
outfile = out2 = tr_buildPath( cwd, end, NULL );
|
||||
tr_free( cwd );
|
||||
tr_free( end );
|
||||
tr_free( base );
|
||||
char * base = tr_basename (infile);
|
||||
char * end = tr_strdup_printf ("%s.torrent", base);
|
||||
char * cwd = tr_getcwd ();
|
||||
outfile = out2 = tr_buildPath (cwd, end, NULL);
|
||||
tr_free (cwd);
|
||||
tr_free (end);
|
||||
tr_free (base);
|
||||
}
|
||||
|
||||
if( !trackerCount )
|
||||
if (!trackerCount)
|
||||
{
|
||||
if( isPrivate )
|
||||
if (isPrivate)
|
||||
{
|
||||
fprintf( stderr, "ERROR: no trackers specified for a private torrent\n" );
|
||||
return EXIT_FAILURE;
|
||||
fprintf (stderr, "ERROR: no trackers specified for a private torrent\n");
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
else
|
||||
{
|
||||
printf( "WARNING: no trackers specified\n" );
|
||||
printf ("WARNING: no trackers specified\n");
|
||||
}
|
||||
}
|
||||
|
||||
printf( "Creating torrent \"%s\" ...", outfile );
|
||||
fflush( stdout );
|
||||
printf ("Creating torrent \"%s\" ...", outfile);
|
||||
fflush (stdout);
|
||||
|
||||
b = tr_metaInfoBuilderCreate( infile );
|
||||
tr_makeMetaInfo( b, outfile, trackers, trackerCount, comment, isPrivate );
|
||||
while( !b->isDone ) {
|
||||
tr_wait_msec( 500 );
|
||||
putc( '.', stdout );
|
||||
fflush( stdout );
|
||||
b = tr_metaInfoBuilderCreate (infile);
|
||||
tr_makeMetaInfo (b, outfile, trackers, trackerCount, comment, isPrivate);
|
||||
while (!b->isDone)
|
||||
{
|
||||
tr_wait_msec (500);
|
||||
putc ('.', stdout);
|
||||
fflush (stdout);
|
||||
}
|
||||
|
||||
putc( ' ', stdout );
|
||||
switch( b->result ) {
|
||||
case TR_MAKEMETA_OK: printf( "done!" ); break;
|
||||
case TR_MAKEMETA_URL: printf( "bad announce URL: \"%s\"", b->errfile ); break;
|
||||
case TR_MAKEMETA_IO_READ: printf( "error reading \"%s\": %s", b->errfile, tr_strerror(b->my_errno) ); break;
|
||||
case TR_MAKEMETA_IO_WRITE: printf( "error writing \"%s\": %s", b->errfile, tr_strerror(b->my_errno) ); break;
|
||||
case TR_MAKEMETA_CANCELLED: printf( "cancelled" ); break;
|
||||
}
|
||||
putc( '\n', stdout );
|
||||
putc (' ', stdout);
|
||||
switch (b->result)
|
||||
{
|
||||
case TR_MAKEMETA_OK:
|
||||
printf ("done!");
|
||||
break;
|
||||
|
||||
tr_metaInfoBuilderFree( b );
|
||||
tr_free( out2 );
|
||||
return 0;
|
||||
case TR_MAKEMETA_URL:
|
||||
printf ("bad announce URL: \"%s\"", b->errfile);
|
||||
break;
|
||||
|
||||
case TR_MAKEMETA_IO_READ:
|
||||
printf ("error reading \"%s\": %s", b->errfile, tr_strerror (b->my_errno));
|
||||
break;
|
||||
|
||||
case TR_MAKEMETA_IO_WRITE:
|
||||
printf ("error writing \"%s\": %s", b->errfile, tr_strerror (b->my_errno));
|
||||
break;
|
||||
|
||||
case TR_MAKEMETA_CANCELLED:
|
||||
printf ("cancelled");
|
||||
break;
|
||||
}
|
||||
putc ('\n', stdout);
|
||||
|
||||
tr_metaInfoBuilderFree (b);
|
||||
tr_free (out2);
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user