Skip to content

Commit

Permalink
Eggdrop v1.8.2rc2 Release Candidate 2
Browse files Browse the repository at this point in the history
  • Loading branch information
vanosg committed Jul 22, 2017
1 parent c6d68e3 commit 6cc1dc6
Show file tree
Hide file tree
Showing 72 changed files with 548 additions and 380 deletions.
13 changes: 7 additions & 6 deletions FEATURES
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
Last revised: June 05, 2002

Eggdrop Features
================


EGGDROP FEATURES


Eggdrop is the most advanced IRC robot available. It has been under
development since December 1993, and unlike most other bots, it is
Expand All @@ -14,9 +16,9 @@ Eggdrop Features
- A "party line" available through dcc chat or telnet, with
multiple channels, giving you the ability to talk to people
without being affected by netsplits.
- A "botnet". A botnet consists of one or more bots linked
together. This can allow bots to op each other securely, control
floods efficiently, and share user lists, ban lists,
- A "botnet". A botnet consists of one or more bots
linked together. This can allow bots to op each other securely,
control floods efficiently, and share user lists, ban lists,
exempt/invite lists, and ignore lists (if sharing is enabled).
- User records are saved on disk and alterable via dcc chat. Each
user can have a password (encrypted), a list of valid hostmasks,
Expand Down Expand Up @@ -48,4 +50,3 @@ Eggdrop Features
Copyright (C) 1997 Robey Pointer

Copyright (C) 2000 - 2017 Eggheads Development Team

201 changes: 98 additions & 103 deletions README

Large diffs are not rendered by default.

19 changes: 10 additions & 9 deletions doc/ABOUT
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
About Eggdrop Last revised: July 27, 2010

About Eggdrop
=============


ABOUT EGGDROP


Eggdrop was created around December 1993 to help stop the incessant
wars on #gayteen. It spawned from another bot that was in the process
Expand Down Expand Up @@ -49,12 +51,12 @@ About Eggdrop

- Some sort of Unix account
- A pretty good knowledge of IRC and Unix, including how to
compile programs, how to read, and what DCC chat is, at absolute
minimum.
- About 5-7 MB of disk space. The Eggdrop tarball is about 5.4 MB
unpacked.
- Tcl -- Eggdrop cannot compile without Tcl installed on your
shell.
compile programs, how to read, and what DCC chat is, at
absolute minimum.
- About 5-7 MB of disk space. The Eggdrop tarball is about 5.4
MB unpacked.
- Tcl -- Eggdrop cannot compile without Tcl installed on
your shell.

Before starting, ask yourself if you really need a bot. Most IRC
servers allow only a handful of bots, and some forbid them outright.
Expand All @@ -64,4 +66,3 @@ About Eggdrop
you want with this bot.

Copyright (C) 1999 - 2017 Eggheads Development Team

31 changes: 20 additions & 11 deletions doc/BANS
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
Bans, Invites and Exempts Last revised: March 07, 2002

Bans, Invites, and Exempts
==========================


BANS, INVITES, AND EXEMPTS


I assume that you know how bans work on IRC. Eggdrop handles bans,
exempts and invites in various ways, and this file is intended to help
Expand All @@ -10,18 +12,21 @@ Bans, Invites, and Exempts
otherwise specified. There are three types of modes:

Global modes

These modes will be active on every channel the bot monitors.
Some will "expire" after a while (be removed automatically).
Others are considered "permanent" and can only be removed by a
master.
Others are considered "permanent" and can only be removed by
a master.

Channel modes

These modes are active only on one channel, and are almost
always temporary modes that expire after an hour or so
(depending on how long you've specified in the config file).
Usually they're created by a Tcl script of some sort.

Non-bot modes

These are modes that were not placed by the bot. They can be
removed by anyone on the channel. The other two types of modes
are protected by the bot (unless the channel settings specify
Expand All @@ -30,13 +35,15 @@ Bans, Invites, and Exempts
Bans can also be either sticky or unsticky:

Sticky
These modes are usually set by a user using the ".stick"
command. Modes with this attribute are attempted to be kept
active on the channel at all times by the bot, even if the

These modes are usually set by a user using the
".stick" command. Modes with this attribute are attempted to be
kept active on the channel at all times by the bot, even if the
channel is set to use dynamic modes. Obviously, if the channel
isn't set to use dynamic modes, this won't have any effect.

Un-sticky

These modes are the style that Eggdrop sets by default when a
user uses one of the commands that result in a mode. This
attribute means that the ban will be removed if using dynamic
Expand All @@ -46,13 +53,15 @@ Bans, Invites, and Exempts
Mode behavior:

Bans

If the channel is supporting dynamic bans, then the ban is set
when a user with a matching hostmask joins the channel;
otherwise, the modes are permanently set. On a channel with
dynamic bans, the ban expires after 'ban-time' minutes (which is
specified in the config file).

Exempts

If the channel is not supporting dynamic exempts, then they are
set at all times. Otherwise, the exemption is set when a ban is
placed whose host includes that covered by the exempt. The
Expand All @@ -61,12 +70,12 @@ Bans, Invites, and Exempts
has been removed, whichever happens last.

Invites

If the channel does not support dynamic invites, then they are
set at all times. Otherwise, the invite is set when the channel
is +i and a user requests an invite into the channel. The invite
then remains set for 'invite-time' minutes (defined in config
file) or until the channel goes -i again, whichever happens
last.
then remains set for 'invite-time' minutes (defined in
config file) or until the channel goes -i again, whichever
happens last.

Copyright (C) 1999 - 2017 Eggheads Development Team

95 changes: 61 additions & 34 deletions doc/BOTNET
Original file line number Diff line number Diff line change
@@ -1,72 +1,86 @@
Botnet Sharing and Linking Last revised: June 29, 2016

Botnet Sharing and Linking
==========================


BOTNET SHARING AND LINKING


The purpose of this document is to show you what a botnet is and how
it could be useful to you. It also covers botflags userfile sharing.


WHAT IS A BOTNET?
-----------------

A botnet consists of one or more bots linked together. This can allow
bots to op each other securely, control floods efficiently, and share
user lists, ban lists, exempt/invite lists, and ignore lists (if
sharing is enabled).


TERMS
-----

The following are some common terms used in this document:

Botnet
BOTNET

A botnet consists of one or more bots connected together.

Link
LINK

Link is the term used to describe a bot connecting to another bot.

Hub
A bot is described as a hub-bot if one or more bots are linked to
it.
HUB

A bot is described as a hub-bot if one or more bots are linked
to it.

LEAF

Leaf
A leaf is a non-hub bot connecting to a hub-bot. A leaf has only one
other bot connected to it, its hub. Leaf bots can be assigned the
"l" botflag to prevent other bots from linking to them.

Link Bot
LINK BOT

A link-bot is a bot that is linked to another bot. It may or may not
be a hub-bot.

Share
SHARE

Share is the term used to describe the sharing of user records.

Share Bot
SHARE BOT

A share-bot is a bot which shares user records with one or more
linked bots.

Aggressive Share
Aggressive share is a term used to describe the direction of sharing
user-files. Aggressive share bots will SEND userfiles to another
passive bot.
AGGRESSIVE SHARE

Aggressive share is a term used to describe the direction of
sharing user-files. Aggressive share bots will SEND userfiles to
another passive bot.

PASSIVE SHARE

Passive Share
Passive share is a term used to describe the direction of sharing
user-files. Passive share bots will accept userfiles from an
Passive share is a term used to describe the direction of
sharing user-files. Passive share bots will accept userfiles from an
aggressive share bot.

Address
ADDRESS

The physical address, containing the address and port of the bot.
For example: lame.org:3333. You can change a bot's address with:

.chaddr <botname> <address> <port#>[/<relay-port#>]

Relay Port
RELAY PORT

The relay port number of the bot is defined in the config file. Note
that you can define one port for bots and another for user
connections.
that you can define one port for bots and another for
user connections.

RELAY

Relay
A relay connection is used to relay (jump) to another bot via telnet
or DCC chat. You can relay to another bot even if the remote bot is
not linked. You can use:
Expand All @@ -75,13 +89,14 @@ Relay

to relay to another bot.

Port
PORT

The telnet port is used by the bot to communicate with other bots
and/or users. Note that you can define separate ports for user and
bot connections.


EXAMPLE BOTTREE
---------------

BotA
|-+BotB
Expand All @@ -91,8 +106,8 @@ BotB is linked to a master sharebot, BotA, and a slave sharebot, BotC.
BotB shares passively with [receives from] BotA and shares aggressively
with [sends to] BotC.


BOT FLAGS
---------

Flags are attributes that determine what a bot can or is allowed to do.
Flags can be either global (such as +s) or channel specific (such as |+s
Expand Down Expand Up @@ -121,8 +136,8 @@ The following is a list of valid bot flags:
0-9 user defined flags
------- ----------------------------------------------------------------


ADDING AND LINKING BOTS
-----------------------

With the common terms out of the way, we can start with the process of
linking two bots. Before you start, you need to know the address and
Expand All @@ -139,61 +154,74 @@ Here is an example scenario:

At this point, you can link the two bots by typing '.link BotA' on BotB
(or '.link BotB' on BotA). The bots will now give themselves random
passwords which are not stored encrypted in the userfile. Note that you
can link as many bots as you wish to your botnet.
passwords which are _not_ stored encrypted in the userfile. Note that
you can link as many bots as you wish to your botnet.


USING BOTFLAGS
--------------

Botflags are needed to assign special functions and tasks to your bots.
Bot flags are set with the '.botattr' command. See '.help botattr' for
help with this command. The following is a list of botflags and their
functions:

"h" (hub)

If you want your bot(s) to automatically link/relink, you can
assign the +h botflag each bot's hub. Note that if you set
multiple bots +h, the bot only attempts to link to one.

"a" (alternate)

If your bots are, for some reason, unable to link to their hub,
they will attempt to connect to an alternate hub. You can assign a
bot as an alternate hub by giving it the +a botflag.

"l" (leaf)

This flag, assigned to a link bot, will prevent the link bot from
linking other bots to your botnet.

"r" (reject)

If you assign this flag to a link bot, the link bot will not be
allowed to link to the botnet.

"i" (isolate)

This flag isolates a link bot's partyline from the rest of the
botnet. Anything said on the link bot's partyline won't appear on
the rest of the botnet.

"s" (SEND userfile to)



+s Giving a link bot this flag will make the bot share aggressively

with the link bot. See 'Aggressive Share' in section 2 of this
document for more information on aggressive sharing.

"|s" (channel-specific sharing)

+s bots need this flag for each channel you want to share.

"p" (ACCEPT userfile from)

Giving a link bot this flag will make the bot share passively with
the link bot. See 'Passive Share' in section 2 of this document
for more information on passive sharing.

"g" (global share)

This flag allows the sharing of all channels with a link bot.

"0-9" (user-defined)

These 10 flags are user-defined can be used by scripters.


MAKING BOTS SHARE USER RECORDS
------------------------------

Before you start preparing your bots for sharing, make sure that
you've loaded the transfer and share modules. You also have to ensure
Expand Down Expand Up @@ -299,4 +327,3 @@ MAKING BOTS SHARE USER RECORDS
`-+Lameshare

Copyright (C) 1999 - 2017 Eggheads Development Team

Loading

0 comments on commit 6cc1dc6

Please sign in to comment.