# Eggdrop 1.9 Snapshot

**Category:** Eggdrop_Bot
**Original Author:** Unknown

## Description
Eggdrop is a full-featured IRC bot designed to automate various tasks on IRC networks, including channel management, user interaction, and network services.

## Key Features
- **Auto-join and re-join channels**
- **Channel settings and flags management**
- **User-level permissions and access control**
- **Text flooding protection**
- **XDCC service support**
- **Undefinable channel flags/settings**
- **TCL scripting for advanced automation**

## File Analysis
- **update.pl** — Perl script for updating GNOME PO files.
- **events.h** — Contains Doxygen documentation for event handling in Eggdrop.
- **main.h** — Main header file for Eggdrop, containing Doxygen documentation.
- **users.h** — Defines user settings and their XML storage format.
- **uptime.c** — Reports uptime information to a specific website.
- **channels.c** — Implements basic channel services and scriptable channel commands.
- **channels.h** — Header file for channels.c.
- **cmdschan.c** — Handles DCC commands from users.
- **flagmaps.c** — Manages flag mappings for user settings.
- **tclchan.c** — TCL implementation of channel management functions.
- **udefchan.c** — Defines user-definable channel flags and settings.
- **userchan.c** — Implements user-specific channel handling.
- **events.c** — Handles various events in Eggdrop, including oldbotnet support.
- **oldbotnet.c** — Provides compatibility with pre-1.9 bots.
- **oldbotnet.h** — Header for oldbotnet.c.
- **tclscript.c** — TCL scripting support for Eggdrop.
- **http.c** — Implements HTTP proxy functionality.
- **proxy.c** — Manages proxy configurations and handlers.
- **proxy.h** — Header file for proxy-related functions.
- **socks5.c** — Implements SOCKS5 proxy functionality.
- **events.c** (ircparty) — Handles IRC partyline events.
- **ircparty.c** — Provides an interface for the IRC partyline.
- **ircparty.h** — Header file for ircparty.c.
- **javascript.c** — JavaScript scripting support in Eggdrop.
- **binds.c** — Manages server bind tables.
- **binds.h** — Header file for binds.c.
- **channel_events.c** — Handles channel-specific events.
- **server.c** — Implements IRC server support and handling.
- **server.h** — Header file for server.c.
- **serverlist.c** — Manages server lists in Eggdrop.
- **serverlist.h** — Header file for serverlist.c.
- **servsock.c** — Provides socket functions for the server.
- **servsock.h** — Header file for servsock.c.
- **uhost_cache.c** — Implements a user host cache mechanism.
- **mycallable.c** — Python scripting support for custom object mappings and function calls.
- **mydict.c** — Custom dictionary implementation for Python scripting.
- **myegguser.c** — Custom object representing an Eggdrop user in Python scripts.
- **mymodule.c** — Custom module for variable mappings in Python scripts.
- **mystdio.c** — Custom stdio support for Python scripting.
- **pythonscript.c** — Implements Python scripting support.
- **pythonscript.h** — Header file for the pythonscript module.