iroffer v1.3 documentation - quick start guide for UNIX/Linux


main
quick start guide
unix/linux
windows
config file
administration
signal handling

home

Download
Download the latest version of iroffer from the iroffer website
 
What is Included
README the README file
WHATSNEW version history of iroffer
COPYING The GNU GPL License
Configure shell script that will generate a Makefile
Makefile.config template Makefile used by Configure
src/ directory containing the source code for iroffer
sample.config sample runtime configuration file for iroffer
iroffer.cron sample crontab script to keep iroffer running the background mode
dynip.sh shell script to determine your IP address
 
Uncompress and compile
This example uses iroffer version 1.3.b09. Substiture the version you are using where necessary.

Uncompress and untar the archive:

$ tar -zxf iroffer1.3.b09.tgz

The archive will place all files in a directory named "iroffer1.3.b09".

Change directory into it:

$ cd iroffer1.3.b09

Run the configuration script that will generate a makefile for your system:

$ ./Configure

Configure for iroffer 1.3.b09 [20040823145936]
Determining OS... Linux
Checking for make... found make
Checking for gcc/cc... found gcc
Seeing if gcc works... yes
Seeing if gcc accepts '-Wall'... yes
Seeing if gcc accepts '-Werror'... yes
Seeing how to define a 16 bit integer... short
Seeing how to define a 32 bit integer... int
Seeing how to define a 64 bit integer... long long
Seeing if compiling with standard #include's works... looks good
Seeing how large FD_SETSIZE is...  1024
Determining endianness... little
Seeing if large file support works... yes
Determing the signedness of 'addrlen'... signed
Seeing how to display long long using printf... ll
Checking for snprintf()... found
Checking for strcasecmp()... found
Checking for strsignal()... found
Checking for regcomp()... found
Seeing if 'sys/mman.h' exists... found
Seeing if 'sys/sendfile.h' exists... found
Seeing if 'sys/vfs.h' exists... found
Seeing if 'sys/statfs.h' exists... found
Seeing if 'sys/param.h' exists... found
Seeing if 'sys/mount.h' exists... found
Seeing if 'sys/statvfs.h' exists... found
Checking for statvfs()... found
Checking for statfs()... found
Seeing if 'crypt.h' is needed... not needed
Seeing if '-lcrypt' is needed... needed
Seeing if crypt() works as expected... yes
Checking for chroot()... found
Seeing if NSS libraries exist (for chroot)... found
Checking for setuid()... found
Checking for getgrouplist()... found
Checking for Linux-style sendfile()... found
Checking for mmap()/munmap()... found
Checking for name of fd limit... RLIMIT_NOFILE
Checking for siginfo_t/sa_sigaction... found
Checking for si_code values... found
Checking for wait status values... found
Seeing if TOS can be set for IP sockets... yes
Creating src/iroffer_config.h... Done
Creating Makefile... Done

Type "make" to compile
No errors or warnings should appear when compiling, if they do, something is wrong

Compile iroffer, this will generate the executable "iroffer" in the current directory:

$ make


mkdir -p obj
gcc -c -Isrc  -Wall -O2 -o obj/convertxdccfile.o src/convertxdccfile.c
gcc -c -Isrc  -Wall -O2 -o obj/iroffer_md5.o src/iroffer_md5.c
gcc -c -Isrc  -Wall -O2 -o obj/iroffer_statefile.o src/iroffer_statefile.c
gcc -c -Isrc  -Wall -O2 -o obj/iroffer_utilities.o src/iroffer_utilities.c
gcc -O2 obj/convertxdccfile.o obj/iroffer_md5.o obj/iroffer_statefile.o obj/iroffer_utilities.o  -lcrypt
-o convertxdccfile
gcc -c -Isrc  -Wall -O2 -o obj/iroffer_admin.o src/iroffer_admin.c
gcc -c -Isrc  -Wall -O2 -o obj/iroffer_dccchat.o src/iroffer_dccchat.c
gcc -c -Isrc  -Wall -O2 -o obj/iroffer_display.o src/iroffer_display.c
gcc -c -Isrc  -Wall -O2 -o obj/iroffer_main.o src/iroffer_main.c
gcc -c -Isrc  -Wall -O2 -o obj/iroffer_misc.o src/iroffer_misc.c
gcc -c -Isrc  -Wall -O2 -o obj/iroffer_transfer.o src/iroffer_transfer.c
gcc -c -Isrc  -Wall -O2 -o obj/iroffer_upload.o src/iroffer_upload.c
gcc -O2 obj/iroffer_admin.o obj/iroffer_dccchat.o obj/iroffer_display.o
obj/iroffer_main.o obj/iroffer_md5.o obj/iroffer_misc.o obj/iroffer_statefile.o
obj/iroffer_transfer.o obj/iroffer_upload.o obj/iroffer_utilities.o  -lcrypt -o iroffer
gcc -O2 obj/iroffer_admin.o obj/iroffer_dccchat.o obj/iroffer_display.o
obj/iroffer_main.o obj/iroffer_md5.o obj/iroffer_misc.o obj/iroffer_statefile.o
obj/iroffer_transfer.o obj/iroffer_upload.o obj/iroffer_utilities.o  -lcrypt
-lnss_files -lnss_dns -o iroffer_chroot

If you want to install the executable system wide in /usr/local/bin do the following (this is optional and requires root privlidges):

$ make install

install -o root -g root -m 0755 iroffer /usr/local/bin/iroffer
 
Configure iroffer
Copy and edit the sample configuration file (sample.config).

It is recomened that you copy the configuration file to another name so that you will have a reference to the defaults if something goes wrong.

$ cp sample.config mybot.config

Detailed information is available in the config file section of the documentation.

Note: As part of the configuration process, you will need to generate an encrypted password. To do this run iroffer with the "-c" flag.

$ ./iroffer -c

iroffer v1.3.b09 [20040823145936] by PMG
  Configuration File Password Generator

This will take a password of your choosing and encrypt it.
You should place the output this program generates in your config file.
You can then use your password you enter here over irc.

Your password must be between 5 and 8 characters
Please Enter Your Password: testtest
And Again for Verification: testtest

To use "testtest" as your password use the following in your config file:
adminpass cH0wSJcuWkuV.
 
Run iroffer
iroffer has two modes for running: foreground (the default) and background.

When iroffer is started in foreground mode, you can monitor and interact with the program from your shell. It will allow you to issue admin commands. However you must stay logged in (or use a program such as screen) or iroffer will exit.

$ ./iroffer mybot.config

Welcome to iroffer by PMG - http://iroffer.org/
Version 1.3.b09 [20040823145936]

** iroffer is distributed under the GNU General Public License.
**    please see the README for more information.

** Starting up...
** Window Size: 80x42
** Started on: 2004-08-30-14:54:24
** Loading mybot.config ... 
** Checking for completeness of config file ...
** You Are Running Linux 2.4.25 on a i686, Good
** Loading State File... 
** State File: Too small, Skipping
** Writing pid file...
** Attempting Connection to 10.200.202.70 (direct)
** Server Connection Established, Logging In
** Server welcome: :alliance.centerclick.org 001 testDCC :Welcome to the
centerclick.org Internet Relay Chat Network testDCC

[ Stat: 0/0 Sls, 0/0 Q, 0.0K/s Rcd, 0 SrQ (Bdw: 0K, 0.0K/s, 0.0K/s Rcd) ]
[ iroffer (testDCC) >                                                   ]

When iroffer is started in background mode, it will place itself in the background and return you to your shell prompt immediately. iroffer will then run unattened and allow you to log off of your shell. In order to interact with the program you will need to issue admin commands through a /msg or via DCC CHAT.

$ ./iroffer -b mybot.config

Welcome to iroffer by PMG - http://iroffer.org/
Version 1.3.b09 [20040823145936]

** iroffer is distributed under the GNU General Public License.
**    please see the README for more information.

** Starting up...
** Started on: 2004-08-30-14:56:08
** Loading mybot.config ... 
** Checking for completeness of config file ...
** You Are Running Linux 2.4.25 on a i686, Good

** Entering Background Mode
** All Commands must be issued by remote administration

Wait for it to join irc and then DCC CHAT it. See signal handling for some notes about background mode.

 
Add Your Files
You will need to add packs to iroffer through the admin commands by either DCC Chat, foreground mode, or /msg. Use the "add" command followed by a "chdesc" for each file you want to offer.
 

Page last modified: 11/23/05



Shop Now! amazon.com