C library intended to give C/C++ developers a quick and easy way to send e-mail from their applications. Supports multiple To/Cc/Bcc recipients and multiple attachments without size limitation. For the actual SMTP communication either libcurl can be used or the built in SMTP support. The library can also be used to just create a multipart MIME message body.

Also comes with a command line application (quickmail) for sending mails (mutiple attachments supported) from command line or scripts.

Cross-platform.
Binary packages available for Windows (32-bit and 64-bit).

Features

  • SMTP
  • C
  • library
  • e-mail
  • mail
  • send
  • command line
  • application
  • low footprint
  • attachments
  • MIME type
  • MIME
  • multipart
  • portable
  • crossplatform
  • embedded
  • multiple

Project Samples

Project Activity

See All Activity >

License

GNU General Public License version 3.0 (GPLv3)

Follow libquickmail

libquickmail Web Site

Other Useful Business Software
Automated quote and proposal software for IT solution providers. | ConnectWise CPQ Icon
Automated quote and proposal software for IT solution providers. | ConnectWise CPQ

Create IT quote templates, automate workflows, add integrations & price catalogs to save time & reduce errors on manual data entry & updates.

ConnectWise CPQ, formerly ConnectWise Sell, is a professional quote and proposal automation software for IT solution providers. ConnectWise CPQ offers a wide range of tools that enables IT solution providers to save time, quote more, and win big. Top features include professional quote or proposal templates, product catalog and sourcing, workflow automation, sales reporting, and integrations with best-in-breed solutions like Cisco, Dell, HP, and Salesforce.
Rate This Project
Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
1
3
0
1
1
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5

User Reviews

  • Looks good but I need help to use TLS from the command line, Windows 10x64. quickmail.exe complains about missing libcurl-4.dll quickmaillite.exe never tries.
  • I wanted a simple email client library to incorporate into a program I am writing under cygwin (for later transfer to a raspberry PI). libquickmail was an obvious choice, because I was already using libcurl. My first problem was persuading libcurl to recognize that SSL was available. Solution: install openssl-devel and then reconfigure and remake libcurl. The second problem was that I could not establish a connection (or rather it kept failing) to googlemail using SSL on port 465. After some debugging, I noticed that in quickmail.c (Line 924), that libquickmail was using smtp: (hard coded) as the protocol. I changed this to smtps: And wonderfully (!) my small test program worked and send my test email, which I was then able to read. I would recommend adding an option to the library to specify that smtps can be used as the protocol. In Germany now, most email accounts MUST use SSL. I would like to add a further remark that might help other users. I am using libquickmail together with libcurl, as I want to load files from an FTP server, process the files and then send an email depending on the result of the processing. If I use libcurl version 7.38.0 (the latest package version available in the Raspberry Pi), my program blocks somewhere (probably in libcurl) when sending an email. If I use a later version (in my case libcurl 7.47.0), I can send emails without problem. Surprisingly, the fix for libcurl version 7.38.0 was to add an attachment to the email. With the attachment (any old file), libquickmail also sent emails with libcurl version 7.38.0. I will therefore inslall libcurl 7.47.0 (or a later version) directly on the Raspberry Pi, rather that using apt-get to install the out-of-date version of libcurl. David Singleton
    1 user found this review helpful.
    Reply from libquickmail
    Posted 2020-10-05
    You should use the `quickmail_send_secure()` function to connect using SSL.
  • I compiled test_quickmail.c, but some errors were occurred as shown below: $ gcc -o test_quickmail test_quickmail.c /tmp/cc2kRB77.o: In function `main': test_quickmail.c:(.text+0x68): undefined reference to `quickmail_get_version' test_quickmail.c:(.text+0x7c): undefined reference to `quickmail_initialize' test_quickmail.c:(.text+0x88): undefined reference to `quickmail_create' test_quickmail.c:(.text+0x98): undefined reference to `quickmail_add_to' test_quickmail.c:(.text+0xa4): undefined reference to `quickmail_add_header' test_quickmail.c:(.text+0xb0): undefined reference to `quickmail_add_header' test_quickmail.c:(.text+0xbc): undefined reference to `quickmail_add_header' test_quickmail.c:(.text+0xc8): undefined reference to `quickmail_set_body' test_quickmail.c:(.text+0xe4): undefined reference to `quickmail_add_body_memory' test_quickmail.c:(.text+0xf4): undefined reference to `quickmail_add_attachment_file' test_quickmail.c:(.text+0x104): undefined reference to `quickmail_add_attachment_file' test_quickmail.c:(.text+0x128): undefined reference to `quickmail_add_attachment_memory' test_quickmail.c:(.text+0x13c): undefined reference to `quickmail_set_debug_log' test_quickmail.c:(.text+0x158): undefined reference to `quickmail_send' test_quickmail.c:(.text+0x190): undefined reference to `quickmail_destroy' collect2: ld returned 1 exit status ==>what's wrong with me? How do I solve this problem? thanks!
    Reply from libquickmail
    Posted 2020-10-05
    Undefined references like that are caused by not linking to the library. You need to add the `libquickmail.a` file or the `-lquickmail` linker flag to the `gcc` command.
  • I'm not able to install libquickmail under Windows 7. I want to use it with MinGW. Where I can see a package good for my environment?
    1 user found this review helpful.
    Reply from libquickmail
    Posted 2020-10-05
    MinGW-w64 Windows 32-bit and 64-bit binary packages are available for download now.
  • It works, but only some error checking, especially failing malloc() will crash the program.
    2 users found this review helpful.
    Reply from libquickmail
    Posted 2020-10-05
    Since this remark the malloc() issues have been resolved. Also Valgrind testing was done to insure there are no more malloc() issues.
Read more reviews >

Additional Project Details

Operating Systems

MinGW/MSYS2, Linux, BSD, Windows

Intended Audience

Information Technology, Developers

User Interface

Command-line

Programming Language

C

Related Categories

C Email Software, C File Transfer Protocol (FTP) Software, C Libraries

Registered

2012-08-02