AML
File:Notice.png Warning, Discontinued!
|
This project appears to have been discontinued. If you have any up-to-date information about this project, please update the page and remove this notice.
|
| File:Aml logo.png | |
| File:Aml screenshot.jpg AML being used in ApexDC++ | |
| Developed by | Toast |
|---|---|
| Initial release | 2002 |
| Stable release | N / A [edit] |
| Beta release | N / A [edit] |
| Written in | Regular Expression |
| Available in | 1 languages |
| Type | Misc |
| License | GNU GPL 2 |
| Website | AML Launchpad Site |
Introduction
AML, short for Admin Master List is a xml based list of known clients and more used for detection in operator clients. Its main goal is to help operators to kick out fake clients or ones reported as badware or cheating. AML helps operators in keeping a clean hub up to date with latest version strings, flooding clients and more.
History
AML began 2002 for NMDC Operator Clients, the predecessor of AML was a list MikeJJ made that had over 100+ profiles but the list wasn't updated that often as AML was.
AML started out to help a DC network called InternationaLs][ABC-Network to help them maintain their hubs in client which they preferred and since the old client list that MikeJJ and his crew was making didn't match up that well and faulty kicks where often the results of it, Toast started to make AML. After a month of scripting the list another scripter joined in to make the list more stable the scripter's name was .DZ he helped out until version 3.x.
Version 3.x[1] was probably one of the most all around scripted client list there was it contained most stuff an operator could react on and the draft was worked out from a operator point of view not as the previous versions that was made up from a developers point of view.
Version 3.x was the default client list in most operator clients there for used widely by operators across the Direct Connect networks.
- Version 1.x - 2.x was based on MikeJJ list.
- Version 3.x was remade and supported over 200+ clients.
- Version 4.x was disconnected lack of time and desire to continue.
Last NMDC Version
Was released on June 22, 2008 on Sourceforge last version was 3.099
Last Version by Toast
Was released on Jan 04 2009 on Sourceforge SVN last version is 4.01.26
Site Removed
Removed the site due to operators still using it for detection and since detection is "fresh" data it was kinda crucial to remove the site to the profiles doesn't become a problem. [2]
ADC and the change
The idea started for a new CMD began at Dec 27, 2007 with a proposal from Toast[3] to all client developers on ADCPortal with an idea called OpenCDM, Crise picked up on the idea for a new CDM and started working on making one.
After a couple of weeks Adrian_007 (RSX++ Developer) had also started making a new CMD[4][5] so they started to work together and making the for ADC and NMDC Clients the CDM was released Jul 01, 2008 and the first AML version shortly followed with the release of it.
AML 4.x is both ADC and NMDC the clients that supports it are:
New Site
The release of the new CDM was also followed by a new bug report site for AML and the old site closed due to lack of maintainance.
AML uses SVN for updating clients faster but stable versions gets released as usual so that people that don't want SVN Versions gets the benefit of AML anyways.
AML Parameters
<source lang="xml"> <?xml version="1.0" encoding="utf-8" standalone="yes"?> <Params> <Param Name="DVE" Pattern="[\w\d \.]{2,10}"/> <Param Name="CSS" Pattern="(S:\d{1,10}(,O:\d{1,10})?)"/> <Param Name="CSL" Pattern="([BLURD]{1}:\d{1,10}([\.,](\d{1,10}))?)(,([BLURD]{1}:\d{1,10}(\.(\d{1,10}))?))?"/> <Param Name="CSM" Pattern="(M:[AP5])"/> <Param Name="CSH" Pattern="(H:(\d{1,5}/){2}\d{1,5})"/> </Params> </source>
All if these parameters should make the perfect tool for matching a tag from a operator client thus making it easier for the scripter to benefit from using parameters and example script follows below the parameters.
Scripting Example
This example tries to match a valid DC++ client
<source lang="xml"> <?xml version="1.0" encoding="utf-8" standalone="yes"?> <InfField Field="TS" Pattern="^(GetListLength not supported|File Not Available)$" Protocol="both"/> <InfField Field="TA" Pattern="^<\+\+ V:%[VE],%[CSM],%[CSH],%[CSS]>" Protocol="nmdc"/> <InfField Field="CO" Pattern="^(0\.(005|0[125]|[125])|[125]|[125]0|100(0)?)$" Protocol="nmdc"/> <InfField Field="SU" Pattern="^MiniSlots XmlBZList ADCGet TTHL TTHF (GetZBlock )?(ZLIG )?$" Protocol="nmdc"/> <InfField Field="PK" Pattern="^DCPLUSPLUS%[PKVE]ABCABC$" Protocol="nmdc"/> <InfField Field="LO" Pattern="^EXTENDEDPROTOCOLABCABCABCABCABCABC$" Protocol="nmdc"/> <InfField Field="ST" Pattern="^[12]$" Protocol="nmdc"/> <InfField Field="VE" Pattern="^0\.7(0([0-9]|91)?|5)$" Protocol="nmdc"/> <InfField Field="TA" Pattern="^<%[VE],%[CSM],%[CSH],%[CSS]>$" Protocol="adc"/> <InfField Field="SU" Pattern="^((ADC0|(TCP|UDP)4){1}(,)?){1,3}$" Protocol="adc"/> <InfField Field="VE" Pattern="^\+\+ 0\.70([0-9]|91)?|5)$" Protocol="adc"/> </source>
All of this should match a valid DC++ client if this matches there is a large possibility that it is a DC++ client and not a fake client some further tests may have to be done to confirm this and those can be done via CDM features.
Disadvantages
- The lack of updates
- Lack of Scripter/Developer
- Concept of CDM is current outdated