Anope IRC Services

Please login or register.

Login with username, password and session length
Advanced search  


Pages: [1] 2 3 ... 10
 on: Today at 01:37:06 AM 
Started by DJFelipe - Last post by genius3000
I'm not very familiar with the stats/irc2sql code or even the use of it but this looks proper. OnNewServer() is called whenever a server is added to Anope's internal handling (e.g., whenever a server connects). In that query, 'online' is set to 'Y', meaning Yes/True and 'link_time' is the output of the MySQL function `now()`.

 on: Yesterday at 11:02:23 PM 
Started by DJFelipe - Last post by DJFelipe
Hey there!

since the 2.X Version i was wondering, why my magIRC always shows servers as offline after a netsplit and reconnect.. So today i was digging around in the File 'irc2sql.cpp' at void 'IRC2SQL::OnNewServer(Server *server)'
Are there parameters missing? I dont see any parsing of the 'online' or 'link_time' values? If i get the code right, only a new server will be flagged as online but after that, it will stay offline forever?

Code: [Select]
void IRC2SQL::OnNewServer(Server *server)
        query = "INSERT DELAYED INTO `" + prefix + "server` (name, hops, comment, link_time, online, ulined) "
                "VALUES (@name@, @hops@, @comment@, now(), 'Y', @ulined@) "
                "ON DUPLICATE KEY UPDATE name=VALUES(name), hops=VALUES(hops), comment=VALUES(comment), "
                        "link_time=VALUES(link_time), online=VALUES(online), ulined=(ulined)";
        query.SetValue("name", server->GetName());
        query.SetValue("hops", server->GetHops());
        query.SetValue("comment", server->GetDescription());
        query.SetValue("ulined", server->IsULined() ? "Y" : "N");

So, as the class 'Server' doesnt have a 'online' flag, i think it will be okay to assume in the query, that the server is now online.. But for the 'link_time' i have no clue...

 on: October 09, 2020, 11:47:20 AM 
Started by Manu - Last post by Manu
Hello, i need help. Now i want update Anope 1.8 to Anope 2.0, but update data not work.

This is old services config encript

#     Plain Text                -  enc_none
#     Previous (broken) MD5     -  enc_old
#     MD5                       -  enc_md5
#     SHA1                      -  enc_sha1

EncModule "enc_none"

This is new config encript for save all database

  * [REQUIRED] Database configuration.
 * This section is used to configure databases used by Anope.
 * You should at least load one database method, otherwise any data you
 * have will not be stored!

 * [DEPRECATED] db_old
 * This is the old binary database format from late Anope 1.7.x, Anope 1.8.x, and
 * early Anope 1.9.x. This module only loads these databases, and will NOT save them.
 * You should only use this to upgrade old databases to a newer database format by loading
 * other database modules in addition to this one, which will be used when saving databases.
   name = "db_old"

    * This is the encryption type used by the databases. This must be set correctly or
    * your passwords will not work. Valid options are: md5, oldmd5, sha1, and plain.
    * You must also be sure to load the correct encryption module below in the Encryption
    * Modules section so that your passwords work.
   hash = "plain"

 * [RECOMMENDED] db_flatfile
 * This is the default flatfile database format.
   name = "db_flatfile"

    * The database name db_flatfile should use
   database = "anope.db"

    * Sets the number of days backups of databases are kept. If you don't give it,
    * or if you set it to 0, Services won't backup the databases.
    * NOTE: Services must run 24 hours a day for this feature to work.
    * This directive is optional, but recommended.
   keepbackups = 3

    * Allows Services to continue file write operations (i.e. database saving)
    * even if the original file cannot be backed up. Enabling this option may
    * allow Services to continue operation under conditions where it might
    * otherwise fail, such as a nearly-full disk.
    * NOTE: Enabling this option can cause irrecoverable data loss under some
    * conditions, so make CERTAIN you know what you're doing when you enable it!
    * This directive is optional, and you are discouraged against enabling it.
   #nobackupokay = yes

    * If enabled, services will fork a child process to save databases.
    * This is only useful with very large databases, with hundreds
    * of thousands of objects, that have a noticeable delay from
    * writing databases.
    * If your database is large enough cause a noticeable delay when
    * saving you should consider a more powerful alternative such
    * as db_sql or db_redis, which incrementally update their
    * databases asynchronously in real time.
   fork = yes

 * db_sql and db_sql_live
 * db_sql module allows saving and loading databases using one of the SQL engines.
 * This module loads the databases once on startup, then incrementally updates
 * objects in the database as they are changed within Anope in real time. Changes
 * to the SQL tables not done by Anope will have no effect and will be overwritten.
 * db_sql_live module allows saving and loading databases using one of the SQL engines.
 * This module reads and writes to SQL in real time. Changes to the SQL tables
 * will be immediately reflected into Anope. This module should not be loaded
 * in conjunction with db_sql.
   name = "db_sql"
   #name = "db_sql_live"

    * The SQL service db_sql(_live) should use, these are configured in modules.conf.
    * For MySQL, this should probably be mysql/main.
   engine = "sqlite/main"

    * An optional prefix to prepended to the name of each created table.
    * Do not use the same prefix for other programs.
   #prefix = "anope_db_"

   /* Whether or not to import data from another database module in to SQL on startup.
    * If you enable this, be sure that the database services is configured to use is
    * empty and that another database module to import from is loaded before db_sql.
    * After you enable this and do a database import you should disable it for
    * subsequent restarts.
    * Note that you can not import databases using db_sql_live. If you want to import
    * databases and use db_sql_live you should import them using db_sql, then shut down
    * and start services with db_sql_live.
   import = false

 * db_redis.
 * This module allows using Redis ( as a database backend.
 * This module requires that m_redis is loaded and configured properly.
 * Redis 2.8 supports keyspace notifications which allows Redis to push notifications
 * to Anope about outside modifications to the database. This module supports this and
 * will internally reflect any changes made to the database immediately once notified.
 * See docs/REDIS for more information regarding this.
   name = "db_redis"

    * Redis database to use. This must be configured with m_redis.
   engine = "redis/main"

 * [RECOMMENDED] Encryption modules.
 * The encryption modules are used when dealing with passwords. This determines how
 * the passwords are stored in the databases, and does not add any security as
 * far as transmitting passwords over the network goes.
 * Without any encryption modules loaded users will not be able to authenticate unless
 * there is another module loaded that provides authentication checking, such as
 * m_ldap_authentication or m_sql_authentication.
 * With enc_none, passwords will be stored in plain text, allowing for passwords
 * to be recovered later but it isn't secure and therefore is not recommended.
 * The other encryption modules use one-way encryption, so the passwords can not
 * be recovered later if those are used.
 * The first encryption module loaded is the primary encryption module. All new passwords are
 * encrypted by this module. Old passwords stored in another encryption method are
 * automatically re-encrypted by the primary encryption module on next identify.
 * enc_md5, enc_sha1, and enc_old are deprecated, and are provided for users
 * to upgrade to a newer encryption module. Do not use them as the primary
 * encryption module. They will be removed in a future release.

#module { name = "enc_bcrypt" }
module { name = "enc_sha256" }

 * When using enc_none, passwords will be stored without encryption. This isn't secure
 * therefore it is not recommended.
#module { name = "enc_none" }

/* Deprecated encryption modules */
#module { name = "enc_md5" }
#module { name = "enc_sha1" }

 * enc_old is Anope's previous (broken) MD5 implementation used from 1.4.x to 1.7.16.
 * If your databases were made using that module, load it here to allow conversion to the primary
 * encryption method.
#module { name = "enc_old" }

Any help is appreciated.


 on: October 07, 2020, 09:04:57 AM 
Started by rabbit - Last post by rabbit

I have inherited an IRC server running Anope 2.0.7 with Inspircd 2.0.27.  This is a very busy server and uptime is imperative.  Also, I am very much a noob to IRC servers so the last 6 months has been a deep dive for me.

I need some help in getting our server to store it's data in MYSQL.

The first thing I noted is that m_mysql was not configured and loaded, this has been corrected, note that there was some data in some tables already prior to enabling this module.

The db_sql_live module is loaded and some tables have data whilst others do not.  For example anope_db_BadWord is populated with data but anope_db_Memo is empty as is anope_db_XLine.

What is the correct procedure to get the mysql database initially loaded and then used from that point on.  I have read up on using the import tag in conjunction with db_sql, is it as simple as restarting Anope with the db_sql and import tag=true to reload the mysql database and then changing to db_sql_live and import = false. 

Is an /os update & /os reload all that is required or do I need a service restart.

I am not sure how the data got into this state, it's almost like someone previously has attempted this and reverted the settings. There were some side effects to enabling db_mysql, a few operators mentioned that their greet had reverted to an older version.

Any advice would be greatly appreciated.

 on: September 20, 2020, 08:04:00 PM 
Started by mikkel - Last post by Manuel
Hello, I would appreciate it very much too. If the module is written in .cpp for Anope 2.0 (2.0.7)


Hallo, ich würde es auch sehr begrüßen. Wenn das Module in .cpp geschrieben wird für Anope 2.0 (2.0.7)

 on: September 06, 2020, 12:07:14 AM 
Started by Manuel - Last post by Lord255
"Es funktioniert sowohl bei Linux als auch bei Windows nicht.."

if google translate works fine: what? you tried anopesmtp under linux? :o why? on linux sendmail is perfect.
i presume anopesmtp(.exe) is for windows. because windows does not come with sendmail. :)
i dont know if you understood well what i wrote, but do you have an smtp server and so did you wrote it's ip behind "anopesmtp(.exe)" ?

anopesmtp needs a paramter, which is the smtp server's ip address.

 on: September 05, 2020, 11:45:16 PM 
Started by Manuel - Last post by Manuel
Genau das habe ich "getestet" und es funktionierte nicht.
Muss eventuell anopesmtp vorher ausgeführt werden?

Es funktioniert sowohl bei Linux als auch bei Windows nicht..

 on: September 05, 2020, 11:36:53 PM 
Started by Manuel - Last post by Lord255
based on other topics on the forum (like,
the solution is what you almost figured out.
seems it needs the ip of the server as well (the ip address of the smtp server!)

SendMailPath "anopesmtp"
or maybe you need .exe there too. idk.
( i googled. :) )

other topics / links:


in case you need this in german, i can use google translate.

 on: September 05, 2020, 09:27:35 PM 
Started by Manuel - Last post by Manuel
sendmailpath = "/usr/sbin/sendmail -t".

Was muss da bei der Windows Version hin?

Muss da anopesmtp.exe hin und wie genau muss das angegeben werden?

 on: August 26, 2020, 11:24:07 AM 
Started by Albasoul - Last post by Zemra
os_netstaff module is For Anope 1.7.21

You can ask the author to convert it to your or latest version

Pages: [1] 2 3 ... 10