topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • December 10, 2018, 11:06 AM
  • Proudly celebrating 13 years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Author Topic: N.A.N.Y. 2019: libvldmail: Your friendly e-mail address validation library.  (Read 715 times)

Tuxman

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 2,089
    • View Profile
    • Donate to Member
Just throwing together my other 2019 applications before writing new ones...

NANY 2019 Entry Information

Application Name libvldmail
Version 0.1.1
Short Description A library that can validate e-mail addresses according to RFC 6531 with a fallback to RFC 5321 ff.
Supported OSes Any, I hope.
Web Page http://www.donationc...ndex.php?topic=45118
Download Link None, actually. This is a library, it needs to be integrated with your own applications...
System Requirements
  • You will need a C compiler. Nothing else.
Version History0.1.1 [2018-02-25]:
- Introducing the BREAK_LOOP_FAIL macro. (Thank you, stsc.)
- Improved output of one of the validation messages.

0.1.0 [2018-02-24]:
- Initial version.
Author when in doubt, me

Description
Your friendly e-mail address validation library.

Features
- Can validate e-mail addresses.
- Comes with a test

Screenshots
 ;D

Usage
Using the Application

You can use libvldmail from inside your own applications. :)
Example code (C):

    #include <vldmail.h>
   
    int main(void) {
        /* ... your code ... */
       
        vldmail validator = validate_email(L"foo@bar.quux");
        if (0 == validator.success) {
            /* success == 0 means that something was wrong. */
            printf(L"Validating foo@bar.quux failed: %ls\n", validator.message);
        }
       
        /* ... more of your code ... */
    }

Uninstallation
Just remove it, I guess.

KodeZwerg

  • Honorary Member
  • Joined in 2018
  • **
  • Posts: 370
    • View Profile
    • Donate to Member
    #include <vldmail.h>
   
    int main(void) {
        /* ... your code ... */
       
        vldmail validator = validate_email(L"foo@bar.quux");
        if (0 == validator.success) {
            /* success == 0 means that something was wrong. */
            printf(L"Validating foo@bar.quux failed: %ls\n", validator.message);
        }
       
        /* ... more of your code ... */
    }
Does your library perform online check to see if its valid or how does it work?
sorry bad english and Delphi are my hobby ;)
politeness is not one of my strengths in writing, just because it sounds rough doesn't mean that I mean it rough.

Tuxman

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 2,089
    • View Profile
    • Donate to Member
No, it is a complete offline implementation of the RFCs. :) It basically parses the string according to given rules.

KodeZwerg

  • Honorary Member
  • Joined in 2018
  • **
  • Posts: 370
    • View Profile
    • Donate to Member
Will you later integrate at least a "does domain exists" function or will it never evolve to such?
Thank you for answering Mr. Tuxman.
sorry bad english and Delphi are my hobby ;)
politeness is not one of my strengths in writing, just because it sounds rough doesn't mean that I mean it rough.

Tuxman

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 2,089
    • View Profile
    • Donate to Member
That would not make sense as the RFCs don't require the "domain" part to be a registered and reachable domain. Additionally, the application which uses the library does not have to access the internet at all.

There are libraries for that.  :up:

KodeZwerg

  • Honorary Member
  • Joined in 2018
  • **
  • Posts: 370
    • View Profile
    • Donate to Member
There are libraries for that.
Okay, thank you again for answering. :Thmbsup:
sorry bad english and Delphi are my hobby ;)
politeness is not one of my strengths in writing, just because it sounds rough doesn't mean that I mean it rough.