UTL_SMTP and Sending Mail

Size: px
Start display at page:

Download "UTL_SMTP and Sending Mail"

Transcription

1 UTL_SMTP and Sending Mail UTL_SMTP, introduced for the first time in Oracle 8.1.6, is an interface to the Simple Mail Transfer Protocol. It requires that you have an SMTP server in your network somewhere most sites I have been to have at least one SMTP server running as it is the most popular method for sending mail. The UTL_SMTP package is best suited for sending small, text only s from the database. While its API supports the sending of attachments and everything else it is left to you to actually encode the multi-part document for example turning binary attachments into mime-encoded documents. In this section we'll visit the example introduced in the DBMS_JOB section, which used UTL_SMTP, build upon it by adding additional functionality. We will also look at an alternative to UTL_SMTP that provides somewhat much more functionality including the ability to easily send attachments with the . Since SMTP is a very low level protocol, we'll reuse existing public domain code to get an SMTP interface at much higher level and we'll get it with very little code. UTL_SMTP a larger example In the DBMS_JOB section, we explore how to send an using UTL_SMTP and 'apparently' making it execute faster by doing it asynchronously. We also made transactional in nature in that section; if you rollback, the does not get sent, if you commit out it goes. I highly recommend the use of DBMS_JOB as a layer on your 's routines for these reasons. In that section, the example UTL_SMTP routine we used was: AppAP.pdf 1 2/28/2005 6:50:04 PM

2 Appendix A tkyte@tkyte816> create or replace 2 PROCEDURE send_mail (p_sender IN VARCHAR2, 3 p_recipient IN VARCHAR2, 4 p_message IN VARCHAR2) 5 as 6 l_mailhost VARCHAR2(255) := 'yourserver.acme.com'; 7 l_mail_conn utl_smtp.connection; 8 BEGIN 9 l_mail_conn := utl_smtp.open_connection(l_mailhost, 25); 10 utl_smtp.helo(l_mail_conn, l_mailhost); 11 utl_smtp.mail(l_mail_conn, p_sender); 12 utl_smtp.rcpt(l_mail_conn, p_recipient); 13 utl_smtp.open_data(l_mail_conn ); 14 utl_smtp.write_data(l_mail_conn, p_message); 15 utl_smtp.close_data(l_mail_conn ); 16 utl_smtp.quit(l_mail_conn); 17 end; 18 / Procedure created. tkyte@tkyte816> begin 2 send_mail( 'me@acme.com', 3 'you@acme.com', 4 'Hello Tom' ); 5 end; 6 / PL/SQL procedure successfully completed. This works OK but is very limited in nature. It sends to exactly one recipient, you cannot CC (Carbon Copy) or BCC (Blind Carbon Copy) anyone, you cannot setup a subject; the always arrives with a 'blank' subject line. We would like to support more options with this package. A full discussion of all of the possibilities with UTL_SMTP would require in depth knowledge of the SMTP protocol itself something that is outside the scope of this book. Readers interested in all of the opportunities available with SMTP should review RFC812 which is the description of SMTP. This is available online at Below, I will simply present how to send an using UTL_SMTP that supports: Multiple 'To' recipients. Multiple 'CC' recipients. Multiple 'BCC' recipients. A single body of up to 32 KB in size. A subject line. A descriptive 'from' line (instead of showing just the address as the 'from' in the client). A specification for a PL/SQL package that supports this might look like the following. Here, we define an array type to allow a caller to easily send a list of recipients as well as provide the external specification of the PL/SQL routine we will be implementing: AppAP.pdf 2

3 create or replace package mail_pkg 2 as 3 type array is table of varchar2(255); 4 5 procedure send( p_sender_ in varchar2, 6 p_from in varchar2, 7 p_to in array default array(), 8 p_cc in array default array(), 9 p_bcc in array default array(), 10 p_subject in varchar2, 11 p_body in long ); 12 end; 13 / Package created. The package body for this implementation is relatively straightforward if understand just enough of the SMTP protocol and what an looks like (how clients get the From, To, CC and so on). Before we look at the code, we'll look at what an might actually look like. Consider the following ASCII text: From: Oracle Database Account <me@acme.com> Subject: This is a subject To: you@acme.com, us@acme.com Cc: them@acme.com Hello Tom, this is the mail you need That is what you would transmit as the body of the using UTL_SMTP to have the client set the From, Subject, and so on. There are no SMTP commands to do this piece of 'magic', rather, this header information is placed right in the body of the itself; separated from the text of the by a blank line. Once we understand this, sending an with all of the options that we need is pretty easy. The only thing we need to understand beyond that is that in order to send the to more then one recipient, we simply call UTL_SMTP.RCPT more then once with different names. That's all of the information we need to know then to send an . So, here is the package body. We start with a couple of constants and global variables. You will of course need to change the g_mailhost to be the name of a server you have access to, in this code I have given it a generic name; yourserver.acme.com: tkyte@tkyte816> create or replace package body mail_pkg 2 as 3 4 g_crlf char(2) default chr(13) chr(10); 5 g_mail_conn utl_smtp.connection; 6 g_mailhost varchar2(255) := 'yourserver.acme.com'; 7 Next, we have an internal (unpublished) function to send an to many recipients it in effect addresses the . At the same time, it builds the To: or CC: lines that we will eventually send as part of the itself and returns that formatted string. It was implemented as a separate function since we need to do this separately for the To, CC, and BCC lists: AppAP.pdf 3

4 Appendix A 8 function address_ ( p_string in varchar2, 9 p_recipients in array ) return varchar2 10 is 11 l_recipients long; 12 begin 13 for i in 1.. p_recipients.count 14 loop 15 utl_smtp.rcpt(g_mail_conn, p_recipients(i) ); 16 if ( l_recipients is null ) 17 then 18 l_recipients := p_string p_recipients(i) ; 19 else 20 l_recipients := l_recipients ', ' p_recipients(i); 21 end if; 22 end loop; 23 return l_recipients; 24 end; Now we have the implementation of our published function, the one that people will actually call to send mail. It starts with an internal procedure writedata that is used to simplify the sending of the headers (the To:, From:, Subject: records). If the header record is not Null, this routine will use the appropriate UTL_SMTP call to send it along with the necessary end of line marker (the carriage return/line feed): 27 procedure send( p_sender_ in varchar2, 28 p_from in varchar2 default NULL, 29 p_to in array default array(), 30 p_cc in array default array(), 31 p_bcc in array default array(), 32 p_subject in varchar2 default NULL, 33 p_body in long default NULL ) 34 is 35 l_to_list long; 36 l_cc_list long; 37 l_bcc_list long; 38 l_date varchar2(255) default 39 to_char( SYSDATE, 'dd Mon yy hh24:mi:ss' ); procedure writedata( p_text in varchar2 ) 42 as 43 begin 44 if ( p_text is not null ) 45 then 46 utl_smtp.write_data( g_mail_conn, p_text g_crlf ); 47 end if; 48 end; Now we are ready to actually send the mail. This part is not very different from the very simple routine we started with. It begins in exactly the same fashion, by connecting to the SMTP server and starting a session: AppAP.pdf 4

5 49 begin 50 g_mail_conn := utl_smtp.open_connection(g_mailhost, 25); utl_smtp.helo(g_mail_conn, g_mailhost); 53 utl_smtp.mail(g_mail_conn, p_sender_ ); 54 Here is where it differs, instead of calling UTL_SMTP.RCPT once; it uses the address_ function to call it (potentially) many times, building the To: and CC: list for us as well. It builds the BCC: list but we won't actually send that (we don't want the recipients to see that list!) 55 l_to_list := address_ ( 'To: ', p_to ); 56 l_cc_list := address_ ( 'Cc: ', p_cc ); 57 l_bcc_list := address_ ( 'Bcc: ', p_bcc ); 58 Now, we use the OPEN_DATA call to start sending the body of the . The code on lines 61 through to 68 generates the header section of data. Line 69 sends the body of the (the contents of the ) and line 70 terminates the for us. 59 utl_smtp.open_data(g_mail_conn ); writedata( 'Date: ' l_date ); 62 writedata( 'From: ' nvl( p_from, p_sender_ ) ); 63 writedata( 'Subject: ' nvl( p_subject, '(no subject)' ) ); writedata( l_to_list ); 66 writedata( l_cc_list ); utl_smtp.write_data( g_mail_conn, '' g_crlf ); 69 utl_smtp.write_data(g_mail_conn, p_body ); 70 utl_smtp.close_data(g_mail_conn ); 71 utl_smtp.quit(g_mail_conn); 72 end; end; 76 / Package body created. Now I can test this API like this: tkyte@tkyte816> begin 2 mail_pkg.send 3 ( p_sender_ => 'me@acme.com', 4 p_from => 'Oracle Database Account <me@acme.com>', 5 p_to => mail_pkg.array( 'you@acme.com',' us@acme.com ' ), 6 p_cc => mail_pkg.array( ' them@acme.com ' ), 7 p_bcc => mail_pkg.array( 'noone@dev.null' ), 8 p_subject => 'This is a subject', 9 p_body => 'Hello Tom, this is the mail you need' ); 10 end; 11 / PL/SQL procedure successfully completed AppAP.pdf 5

6 Appendix A And that call is exactly what generated the ASCII text: Date: 13 May 01 12:33:22 From: Oracle Database Account <me@acme.com Subject: This is a subject To: you@acme.com, us@acme.com Cc: them@acme.com Hello Tom, this is the mail you need We saw above, this is what gets sent to all of these recipients, including noone@dev.null, although we cannot see that recipient since it was on the BCC: line. This covers most of the typical uses of the UTL_SMTP supplied package. Earlier I did say it is capable of sending with attachments and such but this would require an inordinate amount of effort on our part. We would have to: Learn how to format a multi-part mime encoded document, no small feat! Encode binary data using Base-64 (or use some equivalent encoding technique such as uuencoding, binhex, and so on). That would be (conservatively) a couple of hundred, if not thousands of lines of PL/SQL code. Rather then do this; I will suggest that you use the already written and very robust JavaMail API as described below. Loading and using the JavaMail API In order to use the UTL_SMTP package, you must already have a Java enabled database in Oracle 8i. This is because UTL_SMTP relies on UTL_TCP and UTL_TCP which in turn are built on Java functions. (Remember, if you don't have a Java enabled database you can use UTL_HTTP (see that section) to send simple s). So, if you are able to use UTL_SMTP, we can go to the Sun website and download their JavaMail API. This will give us the ability to send much more complicated s from the database; including attachments. The following is based on work performed by a co-worker of mine, Mark Piermarini who helps me out with lots of my Java issues. If you go to you'll be able to download their JavaMail API. The download you get will consist of a couple of hundred files; only one of which we are interested in. After you download the JavaMail API make sure also to get their the JavaBeansTM Activation Framework extension or JAF (javax.activation). This is needed to run the JavaMail API package. After you have downloaded these two sets of files you will need to extract mail.jar from the JavaMail APIdownload and activation.jar from the JAF download. This is all you will need from this feel free to read through the documentation, there is a lot of functionality in there we are not using, we are just using the 'send an ' part of the API. The API includes functions for receiving mail as well from IMAP, POP, and other sources. We will need to load the mail.jar and activation.jar into the database using loadjava but before we can do that we must repackage them. These jar files are compressed in a format that is not understood by the database byte code interpreter. You need to 'unjar' and 'rejar' them without compression or use a tool such as WinZip to 'rejar' them into a zip file. What I did on Windows 2000 was: AppAP.pdf 6

7 1. Used WinZip to extract the contents of mail.jar into my c:\temp\mail directory 2. Used WinZip to create a new archive c:\temp\mail8i.zip 3. Put the contents of c:\temp\mail\*.* including subdirectories into this new archive I did the same thing for activation.jar only replacing mail with activation in the above steps. Now we are ready to load these zip (or jar files, whatever you named them) into the database. These files need to be loaded into the database using the SYS user since they have 'protected' Java packages that regular users cannot upload. We will use the loadjava commands: Where: loadjava -u sys/manager -o -r -v -f -noverify -synonym -g public activation8i.zip loadjava -u sys/manager -o -r -v -f -noverify -synonym -g public mail8i.zip -u sys/manager is the user ID and password for your SYS account. Some of the packages are protected and must be loaded as SYS. -o is shorthand for oci8, I am using the oci8 driver. You could use the thin driver as well but you'll need to modify the command to do so -r is short for resolve. This will resolve all external references in the loaded classes helping to verify that the loaded java classes will be able to function after we load them -v is short for verbose. This gives us something to do while loadjava is running. We can see it work through each step of its process. -f is short for force. This isn't necessary on the first load but is OK to use. If you try a loadjava and hit an error, you can correct it, and reload then you would either need to use the dropjava command to drop the jar file from the database or use force. Using force just makes it easier for us. -noverify does not attempt to verify the bytecode. You must be granted oracle.aurora.security.jserverpermission(verifier) to execute this option. In addition, this option must be used in conjunction with -r. SYS has this privilege. This is needed because the bytecode verifier will flag some issues with the mail.jar file and this works around that issue. -synonym creates public synonyms for these classes. Since we will not install the mail java code we write as SYS, this allows us to 'see' the SYS loaded java classes. -g public grants execute on these loaded classes to PUBLIC. If this is not desirable, change the g to be just the user you want to create the 'send mail' routines in, for example -g UTILITY_ACCT. You can find out more about loadjava and the above options in the Oracle8i Java Developers Guide. After these packages are loaded, we are ready to create a Java stored procedure to actually send the mail. This procedure will act as a thin layer on top of the JavaMail API and will let us ultimately write a PL/SQL binding layer with the following spec: AppAP.pdf 7

8 Appendix A tkyte@tkyte816> desc send FUNCTION send RETURNS NUMBER Argument Name Type In/Out Default? P_FROM VARCHAR2 IN P_TO VARCHAR2 IN P_CC VARCHAR2 IN P_BCC VARCHAR2 IN P_SUBJECT VARCHAR2 IN P_BODY VARCHAR2 IN P_SMTP_HOST VARCHAR2 IN P_ATTACHMENT_DATA BLOB IN P_ATTACHMENT_TYPE VARCHAR2 IN P_ATTACHMENT_FILE_NAME VARCHAR2 IN This function will give us the ability to use CC's and BCC's and send an attachment. It is left as an exercise for the reader to implement passing arrays of BLOBs or overloading this to support CLOB or BFILE types for attachments as well. The Java stored procedure we will create follows. It uses the basic functionality of the JavaMail API class and is relatively straightforward. Again, we are not going into all of the uses of the JavaMail API (that could be a book in itself), just the basics here. The mail class below has a single method; send. This is the method we will use to send a message. As it is implemented, it returns the number 1 if it is successful in sending the mail and a 0 otherwise. This implementation is very basic it could be much more sophisticated, providing support for many attachment types (CLOBs, BFILEs, LONGs, and so on). It could also be modified to report back to the caller the exact error received from SMTP such as invalid recipient, no transport. tkyte@tkyte816> create or replace and compile 2 java source named "mail" 3 as 4 import java.io.*; 5 import java.sql.*; 6 import java.util.properties; 7 import java.util.date; 8 import javax.activation.*; 9 import javax.mail.*; 10 import javax.mail.internet.*; 11 import oracle.jdbc.driver.*; 12 import oracle.sql.*; public class mail 15 { 16 static String dftmime = "application/octet-stream"; 17 static String dftname = "filename.dat"; public static oracle.sql.number 20 send(string from, 21 String to, 22 String cc, 23 String bcc, 24 String subject, 25 String body, 26 String SMTPHost, 27 oracle.sql.blob attachmentdata, 28 String attachmenttype, 29 String attachmentfilename) AppAP.pdf 8

9 The above argument list matches up with the SQL call specification we outlined above the arguments are mostly self-explanatory. The two that need some clarification are the attachmenttype and the attachmentfilename. The attachmenttype should be a MIME (Multi-purpose Internet Mail Extensions) type as you may be familiar with, from HTML documents. The MIME type of a GIF image for example is image/gif, the mime type of a plain text document would be text/plain, and a HTML attachment would be text/html. The attachmentfilename in this example is not the name of an existing OS file that would be attached but rather the filename of the attachment in the itself what the recipient of this will see the name of the attachment as. The actual attachment is the oracle.sql.blob that is sent to this routine. Now, onto the body of the code. We begin by setting the session property mail.smtp.host to the name of the SMTP host the caller sent to us the JavaMail API reads this value when deciding what SMTP server to connect to: 30 { 31 int rc = 0; try 34 { 35 Properties props = System.getProperties(); 36 props.put("mail.smtp.host", SMTPHost); 37 Message msg = 38 new MimeMessage(Session.getDefaultInstance(props, null)); 39 Next, we set up the headers. This part tells the JavaMail API who the message is from, who to send it to, who to send a carbon copy (CC) or blind carbon copy (BCC), what the subject of the is and what date should be associated with the 40 msg.setfrom(new InternetAddress(from)); if (to!= null && to.length() > 0) 43 msg.setrecipients(message.recipienttype.to, 44 InternetAddress.parse(to, false)); if (cc!= null && cc.length() > 0) 47 msg.setrecipients(message.recipienttype.cc, 48 InternetAddress.parse(cc, false)); if (bcc!= null && bcc.length() > 0) 51 msg.setrecipients(message.recipienttype.bcc, 52 InternetAddress.parse(bcc, false)); if ( subject!= null && subject.length() > 0 ) 55 msg.setsubject(subject); 56 else msg.setsubject("(no subject)"); msg.setsentdate(new Date()); 59 Next, we use one of two methods to send an . If the attachmentdata argument is not Null, then we will MIME encode the a standard that supports the sending of attachments and other multi-part documents. We do this by setting up multiple MIME body parts in this case two of them, one for the body of the (the text) and the other for the attachment itself. Lines 76 through 78 need a little additional explanation. They are how we can send an via a BLOB. The JavaMail API doesn't understand the oracle.sql.blob type natively (it is after all a generic API). In order to send the BLOB attachment, we must provide a method for the JavaMail API to get at the BLOB data. We accomplish that by creating our own DataHandler a class with an interface that the JavaMail API understands how to call in order to get data to populate the attachment. This class (BLOBDataHandler) is implemented by us as a nested class below AppAP.pdf 9

10 Appendix A 60 if (attachmentdata!= null) 61 { 62 MimeBodyPart mbp1 = new MimeBodyPart(); 63 mbp1.settext((body!= null? body : "")); 64 mbp1.setdisposition(part.inline); MimeBodyPart mbp2 = new MimeBodyPart(); 67 String type = 68 (attachmenttype!= null? attachmenttype : dftmime); String filename = (attachmentfilename!= null? 71 attachmentfilename : dftname); mbp2.setdisposition(part.attachment); 74 mbp2.setfilename(filename); mbp2.setdatahandler(new 77 DataHandler(new BLOBDataSource(attachmentData, type)) 78 ); MimeMultipart mp = new MimeMultipart(); 81 mp.addbodypart(mbp1); 82 mp.addbodypart(mbp2); 83 msg.setcontent(mp); 84 } If the does not have an attachment setting the body of the is accomplished very simply via the single call to settext: 85 else 86 { 87 msg.settext((body!= null? body : "")); 88 } 89 Transport.send(msg); 90 rc = 1; 91 } catch (Exception e) 92 { 93 e.printstacktrace(); 94 rc = 0; 95 } finally 96 { 97 return new oracle.sql.number(rc); 98 } 99 } 100 Now for our nested class BLOBDataSource. It simply provides a generic interface for the JavaMail API to access our oracle.sql.blob type. It is very straightforward in its implementation: 101 // Nested class that implements a DataSource. 102 static class BLOBDataSource implements DataSource 103 { 104 private BLOB data; 105 private String type; BLOBDataSource(BLOB data, String type) AppAP.pdf 10 2/28/2005 6:50:06 PM

11 108 { 109 this.type = type; 110 this.data = data; 111 } public InputStream getinputstream() throws IOException 114 { 115 try 116 { 117 if(data == null) 118 throw new IOException("No data."); return data.getbinarystream(); 121 } catch(sqlexception e) 122 { 123 throw new 124 IOException("Cannot get binary input stream from BLOB."); 125 } 126 } public OutputStream getoutputstream() throws IOException 129 { 130 throw new IOException("Cannot do this."); 131 } public String getcontenttype() 134 { 135 return type; 136 } public String getname() 139 { 140 return "BLOBDataSource"; 141 } 142 } 143 } 144 / Java created. Now that we have the Java class created for PL/SQL to bind to, we need to create that binding routine to map the PL/SQL types to their Java types and to bind the PL/SQL routine to this Java class. This is simply done by the following: tkyte@tkyte816> create or replace function send( 2 p_from in varchar2, 3 p_to in varchar2, 4 p_cc in varchar2, 5 p_bcc in varchar2, 6 p_subject in varchar2, 7 p_body in varchar2, 8 p_smtp_host in varchar2, 9 p_attachment_data in blob, 10 p_attachment_type in varchar2, AppAP.pdf 11 2/28/2005 6:50:06 PM

12 Appendix A 11 p_attachment_file_name in varchar2) return number 12 as 13 language java name 'mail.send( java.lang.string, 14 java.lang.string, 15 java.lang.string, 16 java.lang.string, 17 java.lang.string, 18 java.lang.string, 19 java.lang.string, 20 oracle.sql.blob, 21 java.lang.string, 22 java.lang.string 23 ) return oracle.sql.number'; 24 / Function created. Now, the very last thing we must do before using this is to ensure our user (the owner of the above mail class and send stored procedure) has sufficient privileges to execute the routine. These would be the following: sys@tkyte816> begin 2 dbms_java.grant_permission( 3 grantee => 'USER', 4 permission_type => 'java.util.propertypermission', 5 permission_name => '*', 6 permission_action => 'read,write' 7 ); 8 dbms_java.grant_permission( 9 grantee => 'USER', 10 permission_type => 'java.net.socketpermission', 11 permission_name => '*', 12 permission_action => 'connect,resolve' 13 ); 14 end; 15 / PL/SQL procedure successfully completed. Note that in the grant on java.net.socketpermission, I used a wildcard in the permission_name. This allows USER to connect to and resolve any host. Technically, we could put in there just the name of the SMTP server we will be using. This would be the minimal grant we need. It is needed in order to resolve the hostname of our SMTP host and then connect to it. The other permission, java.util.propertypermission, is needed in order to set the mail.smtp.host in our sessions properties. Now we are ready to test. I reused some code from the DBMS_LOB section where we had a routine load_a_file. I modified that and the DEMO table to have a BLOB column instead of a CLOB and loaded the mail8i.zip file we loaded in as a class into this demo table. Now I can use the following PL/SQL block to send it to myself as an attachment in an from the database: AppAP.pdf 12 2/28/2005 6:50:06 PM

13 set serveroutput on size exec dbms_java.set_output( ) tkyte@tkyte816> declare 2 ret_code number; 3 begin 4 for i in (select theblob from demo ) 5 loop 6 ret_code := send( 7 p_from => 'me@acme.com', 8 p_to => 'you@acme.com', 9 p_cc => NULL, 10 p_bcc => NULL, 11 p_subject => 'Use the attached Zip file', 12 p_body => 'to send with attachments...', 13 p_smtp_host => 'yourserver.acme.com', 14 p_attachment_data => i.theblob, 15 p_attachment_type => 'application/winzip', 16 p_attachment_file_name => 'mail8i.zip'); 17 if ret_code = 1 then 18 dbms_output.put_line ('Successfully sent message...'); 19 else 20 dbms_output.put_line ('Failed to send message...'); 21 end if; 22 end loop; 23 end; 24 / Successfully sent message... PL/SQL procedure successfully completed. You definitely want to set serverouput on and call the DBMS_JAVA.SET_OUTPUT routine when testing this. This is because the exception is being printed by the Java stored procedure to System.out and by default that will go into a trace file on the server. If you want to see any errors in your SQL*PLUS session, you need to make these two settings. It will be very useful for debugging purposes! Summary In this section, we briefly reviewed the existing UTL_SMTP package. Here we have seen how to send s to multiple recipients with a custom From: and Subject: header. This should satisfy most people's needs for sending from the database. UTL_SMTP is good for sending simple text only s but sending attachments or complex s is beyond its capabilities (unless you want to encode the entire yourself). In the cases where you need this additional sophistication, we looked at how to use the JavaMail API. Since Sun has graciously supplied us with all of the logic we would need to do this we'll just reuse their code. This section has demonstrated not only how to send mail but a powerful side effect of having Java as an alternative stored procedure language. Now you can use the entire set of public domain code and class libraries that are available. We can enable the database to do many things that were not previously possible. In fact, the PL/SQL developers at Oracle used the same technique themselves. UTL_TCP is built on Java itself in Oracle 8i AppAP.pdf 13 2/28/2005 6:50:06 PM

SERVLETS - SENDING EMAIL

SERVLETS - SENDING EMAIL SERVLETS - SENDING EMAIL http://www.tutorialspoint.com/servlets/servlets-sending-email.htm Copyright tutorialspoint.com To send an email using your a Servlet is simple enough but to start with you should

More information

Building a Multi-Threaded Web Server

Building a Multi-Threaded Web Server Building a Multi-Threaded Web Server In this lab we will develop a Web server in two steps. In the end, you will have built a multi-threaded Web server that is capable of processing multiple simultaneous

More information

2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET)

2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET) 2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET) There are three popular applications for exchanging information. Electronic mail exchanges information between people and file

More information

Advanced SQL Injection in Oracle databases. Esteban Martínez Fayó

Advanced SQL Injection in Oracle databases. Esteban Martínez Fayó Advanced SQL Injection in Oracle databases Esteban Martínez Fayó February 2005 Outline Introduction SQL Injection attacks How to exploit Exploit examples SQL Injection in functions defined with AUTHID

More information

JAVAMAIL API - SMTP SERVERS

JAVAMAIL API - SMTP SERVERS JAVAMAIL API - SMTP SERVERS http://www.tutorialspoint.com/javamail_api/javamail_api_smtp_servers.htm Copyright tutorialspoint.com SMTP is an acronym for Simple Mail Transfer Protocol. It is an Internet

More information

Continuous Integration Part 2

Continuous Integration Part 2 1 Continuous Integration Part 2 This blog post is a follow up to my blog post Continuous Integration (CI), in which I described how to execute test cases in Code Tester (CT) in a CI environment. What I

More information

Email Electronic Mail

Email Electronic Mail Email Electronic Mail Electronic mail paradigm Most heavily used application on any network Electronic version of paper-based office memo Quick, low-overhead written communication Dates back to time-sharing

More information

Sending Secure Electronic Mail (S/MIME) in Java (CAPS) the Easy Way Michael.W.Czapski@gmail.com May, 2009

Sending Secure Electronic Mail (S/MIME) in Java (CAPS) the Easy Way Michael.W.Czapski@gmail.com May, 2009 Sending Secure Electronic Mail (S/MIME) in Java (CAPS) the Easy Way Michael.W.Czapski@gmail.com May, 2009 Table of Contents Introduction...1 SecMail Class Library and Pre-requisites Download...1 Setting

More information

Calling Java from PL/SQL

Calling Java from PL/SQL CHAPTER 27 Calling Java from PL/SQL The Java language, originally designed and promoted by Sun Microsystems and now widely promoted by nearly everyone other than Microsoft, offers an extremely diverse

More information

Protocolo FTP. FTP: Active Mode. FTP: Active Mode. FTP: Active Mode. FTP: the file transfer protocol. Separate control, data connections

Protocolo FTP. FTP: Active Mode. FTP: Active Mode. FTP: Active Mode. FTP: the file transfer protocol. Separate control, data connections : the file transfer protocol Protocolo at host interface local file system file transfer remote file system utilizes two ports: - a 'data' port (usually port 20...) - a 'command' port (port 21) SISTEMAS

More information

SMTP-32 Library. Simple Mail Transfer Protocol Dynamic Link Library for Microsoft Windows. Version 5.2

SMTP-32 Library. Simple Mail Transfer Protocol Dynamic Link Library for Microsoft Windows. Version 5.2 SMTP-32 Library Simple Mail Transfer Protocol Dynamic Link Library for Microsoft Windows Version 5.2 Copyright 1994-2003 by Distinct Corporation All rights reserved Table of Contents 1 Overview... 5 1.1

More information

Developing SQL and PL/SQL with JDeveloper

Developing SQL and PL/SQL with JDeveloper Seite 1 von 23 Developing SQL and PL/SQL with JDeveloper Oracle JDeveloper 10g Preview Technologies used: SQL, PL/SQL An Oracle JDeveloper Tutorial September 2003 Content This tutorial walks through the

More information

Mail User Agent Project

Mail User Agent Project Mail User Agent Project Tom Kelliher, CS 325 100 points, due May 4, 2011 Introduction (From Kurose & Ross, 4th ed.) In this project you will implement a mail user agent (MUA) that sends mail to other users.

More information

Developing Stored Procedures In Java TM. An Oracle Technical White Paper April 1999

Developing Stored Procedures In Java TM. An Oracle Technical White Paper April 1999 TM An Oracle Technical White Paper INTRODUCTION In three years, Java has matured from a programming language used to develop simple graphical user interface (GUI) programs that could be downloaded over

More information

# Constructors $smtp = Net::SMTP->new('mailhost'); $smtp = Net::SMTP->new('mailhost', Timeout => 60);

# Constructors $smtp = Net::SMTP->new('mailhost'); $smtp = Net::SMTP->new('mailhost', Timeout => 60); NAME Net::SMTP - Simple Mail Transfer Protocol Client SYNOPSIS use Net::SMTP; DESCRIPTION EXAMPLES # Constructors $smtp = Net::SMTP->new('mailhost'); $smtp = Net::SMTP->new('mailhost', Timeout => 60);

More information

1 Stored Procedures in PL/SQL 2 PL/SQL. 2.1 Variables. 2.2 PL/SQL Program Blocks

1 Stored Procedures in PL/SQL 2 PL/SQL. 2.1 Variables. 2.2 PL/SQL Program Blocks 1 Stored Procedures in PL/SQL Many modern databases support a more procedural approach to databases they allow you to write procedural code to work with data. Usually, it takes the form of SQL interweaved

More information

Cabot Consulting Oracle Solutions. The Benefits of this Approach. Infrastructure Requirements

Cabot Consulting Oracle Solutions. The Benefits of this Approach. Infrastructure Requirements Scheduling Workbooks through the Application Concurrent Manager By Rod West, Cabot Oracle Application users will be very familiar with the Applications concurrent manager and how to use it to schedule

More information

Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP Abstract Message Format. The Client/Server model is used:

Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP Abstract Message Format. The Client/Server model is used: Evolution of the WWW Communication in the WWW World Wide Web (WWW) Access to linked documents, which are distributed over several computers in the History of the WWW Origin 1989 in the nuclear research

More information

# Constructors $smtp = Net::SMTP->new('mailhost'); $smtp = Net::SMTP->new('mailhost', Timeout => 60);

# Constructors $smtp = Net::SMTP->new('mailhost'); $smtp = Net::SMTP->new('mailhost', Timeout => 60); NAME Net::SMTP - Simple Mail Transfer Protocol Client SYNOPSIS DESCRIPTION EXAMPLES # Constructors $smtp = Net::SMTP->new('mailhost', Timeout => 60); This module implements a client interface to the SMTP

More information

How to move email to your new @students.ecu.edu account with MAC Mail

How to move email to your new @students.ecu.edu account with MAC Mail How to move email to your new @students.ecu.edu account with MAC Mail 1. Open Mail, and then do one of the following: If you've never set up any e mail accounts using Mail, the Welcome to Mail page appears.

More information

1. Seam Mail Introduction 2. Configuration 3. Core Usage 4. Templating 5. Advanced Features

1. Seam Mail Introduction 2. Configuration 3. Core Usage 4. Templating 5. Advanced Features Seam Mail 1. Seam Mail Introduction... 1 1.1. Getting Started... 1 2. Configuration... 3 2.1. Minimal Configuration... 3 3. Core Usage... 5 3.1. Intro... 5 3.2. Contacts... 5 3.2.1. String Based... 5

More information

Dove User Guide Copyright 2010-2011 Virgil Trasca

Dove User Guide Copyright 2010-2011 Virgil Trasca Dove User Guide Dove User Guide Copyright 2010-2011 Virgil Trasca Table of Contents 1. Introduction... 1 2. Distribute reports and documents... 3 Email... 3 Messages and templates... 3 Which message is

More information

CHAPTER 7. E-Mailing with CGI

CHAPTER 7. E-Mailing with CGI CHAPTER 7 E-Mailing with CGI OVERVIEW One of the most important tasks of any CGI program is ultimately to let someone know that something has happened. The most convenient way for users is to have this

More information

C HAPTER E IGHTEEN T HE PGP, MAIL, AND CGI LIBRARIES. PGP Interface Library

C HAPTER E IGHTEEN T HE PGP, MAIL, AND CGI LIBRARIES. PGP Interface Library C HAPTER E IGHTEEN T HE PGP, MAIL, AND CGI LIBRARIES The PGP (pgp-lib.pl), mail (mail-lib.pl), and CGI (cgi-lib.pl) libraries are general libraries that support Web-store-specific functions. For example,

More information

How to use JavaMail to send email

How to use JavaMail to send email Chapter 15 How to use JavaMail to send email Objectives Applied Knowledge How email works Sending client Mail client software Receiving client Mail client software SMTP Sending server Mail server software

More information

2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET)

2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET) 2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET) There are three popular applications for exchanging information. Electronic mail exchanges information between people and file

More information

Getting Started Guide

Getting Started Guide Getting Started Guide Mulberry IMAP Internet Mail Client Versions 3.0 & 3.1 Cyrusoft International, Inc. Suite 780 The Design Center 5001 Baum Blvd. Pittsburgh PA 15213 USA Tel: +1 412 605 0499 Fax: +1

More information

Network Services. Email SMTP, Internet Message Format. Johann Oberleitner SS 2006

Network Services. Email SMTP, Internet Message Format. Johann Oberleitner SS 2006 Network Services Email SMTP, Internet Message Format Johann Oberleitner SS 2006 Agenda Email SMTP Internet Message Format Email Protocols SMTP Send emails POP3/IMAPv4 Read Emails Administrate mailboxes

More information

isecuremail User Guide for iphone

isecuremail User Guide for iphone isecuremail User Guide for iphone Page 1 CONTENTS Chapter 1: Welcome... 4 Chapter 2: Getting Started... 5 Compatability... 5 Preliminary Steps... 5 Setting up a POP3 / IMAP4/ Exchange Email Account...

More information

Best Practices for Oracle Databases Hardening Oracle 10.2.0.3 / 10.2.0.4

Best Practices for Oracle Databases Hardening Oracle 10.2.0.3 / 10.2.0.4 Best Practices for Oracle Databases Hardening Oracle 10.2.0.3 / 10.2.0.4 Alexander Kornbrust Table of Content Passwords (Security) Patches Database Settings PUBLIC Privileges Database Trigger Compiling

More information

Set up Outlook for your new student e mail with IMAP/POP3 settings

Set up Outlook for your new student e mail with IMAP/POP3 settings Set up Outlook for your new student e mail with IMAP/POP3 settings 1. Open Outlook. The Account Settings dialog box will open the first time you open Outlook. If the Account Settings dialog box doesn't

More information

Internet Architecture

Internet Architecture Internet Architecture Lecture 10: How Email Work Assistant Teacher Samraa Adnan Al-Asadi 1 How Email Works Electronic mail, or email, might be the most heavily used feature of the Internet. You can use

More information

Internet Technology 2/13/2013

Internet Technology 2/13/2013 Internet Technology 03r. Application layer protocols: email Email: Paul Krzyzanowski Rutgers University Spring 2013 1 2 Simple Mail Transfer Protocol () Defined in RFC 2821 (April 2001) Original definition

More information

The Application Layer. CS158a Chris Pollett May 9, 2007.

The Application Layer. CS158a Chris Pollett May 9, 2007. The Application Layer CS158a Chris Pollett May 9, 2007. Outline DNS E-mail More on HTTP The Domain Name System (DNS) To refer to a process on the internet we need to give an IP address and a port. These

More information

WebPublish User s Manual

WebPublish User s Manual WebPublish User s Manual Documentation for WebPublish Version 0.1.0. Charles Henry Schoonover i Table of Contents 1 Introduction............................... 1 2 Installation................................

More information

CPSC 360 - Network Programming. Email, FTP, and NAT. http://www.cs.clemson.edu/~mweigle/courses/cpsc360

CPSC 360 - Network Programming. Email, FTP, and NAT. http://www.cs.clemson.edu/~mweigle/courses/cpsc360 CPSC 360 - Network Programming E, FTP, and NAT Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu April 18, 2005 http://www.cs.clemson.edu/~mweigle/courses/cpsc360

More information

Send Email TLM. Table of contents

Send Email TLM. Table of contents Table of contents 1 Overview... 3 1.1 Overview...3 1.1.1 Introduction...3 1.1.2 Definitions... 3 1.1.3 Concepts... 3 1.1.4 Features...4 1.1.5 Requirements... 4 2 Warranty... 5 2.1 Terms of Use... 5 3 Configuration...6

More information

IBM. Implementing SMTP and POP3 Scenarios with WebSphere Business Integration Connect. Author: Ronan Dalton

IBM. Implementing SMTP and POP3 Scenarios with WebSphere Business Integration Connect. Author: Ronan Dalton IBM Implementing SMTP and POP3 Scenarios with WebSphere Business Integration Connect Author: Ronan Dalton Table of Contents Section 1. Introduction... 2 Section 2. Download, Install and Configure ArGoSoft

More information

CS43: Computer Networks Email. Kevin Webb Swarthmore College September 24, 2015

CS43: Computer Networks Email. Kevin Webb Swarthmore College September 24, 2015 CS43: Computer Networks Email Kevin Webb Swarthmore College September 24, 2015 Three major components: mail (MUA) mail transfer (MTA) simple mail transfer protocol: SMTP User Agent a.k.a. mail reader composing,

More information

Creating PL/SQL Blocks. Copyright 2007, Oracle. All rights reserved.

Creating PL/SQL Blocks. Copyright 2007, Oracle. All rights reserved. What Will I Learn? In this lesson, you will learn to: Describe the structure of a PL/SQL block Identify the different types of PL/SQL blocks Identify PL/SQL programming environments Create and execute

More information

Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP - Message Format. The Client/Server model is used:

Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP - Message Format. The Client/Server model is used: Evolution of the WWW Communication in the WWW World Wide Web (WWW) Access to linked documents, which are distributed over several computers in the History of the WWW Origin 1989 in the nuclear research

More information

www.virtualians.pk CS506 Web Design and Development Solved Online Quiz No. 01 www.virtualians.pk

www.virtualians.pk CS506 Web Design and Development Solved Online Quiz No. 01 www.virtualians.pk CS506 Web Design and Development Solved Online Quiz No. 01 Which of the following is a general purpose container? JFrame Dialog JPanel JApplet Which of the following package needs to be import while handling

More information

Email, SNMP, Securing the Web: SSL

Email, SNMP, Securing the Web: SSL Email, SNMP, Securing the Web: SSL 4 January 2015 Lecture 12 4 Jan 2015 SE 428: Advanced Computer Networks 1 Topics for Today Email (SMTP, POP) Network Management (SNMP) ASN.1 Secure Sockets Layer 4 Jan

More information

Java Language Tools COPYRIGHTED MATERIAL. Part 1. In this part...

Java Language Tools COPYRIGHTED MATERIAL. Part 1. In this part... Part 1 Java Language Tools This beginning, ground-level part presents reference information for setting up the Java development environment and for compiling and running Java programs. This includes downloading

More information

CS346: Database Programming. http://warwick.ac.uk/cs346

CS346: Database Programming. http://warwick.ac.uk/cs346 CS346: Database Programming http://warwick.ac.uk/cs346 1 Database programming Issue: inclusionofdatabasestatementsinaprogram combination host language (general-purpose programming language, e.g. Java)

More information

What is ODBC? Database Connectivity ODBC, JDBC and SQLJ. ODBC Architecture. More on ODBC. JDBC vs ODBC. What is JDBC?

What is ODBC? Database Connectivity ODBC, JDBC and SQLJ. ODBC Architecture. More on ODBC. JDBC vs ODBC. What is JDBC? What is ODBC? Database Connectivity ODBC, JDBC and SQLJ CS2312 ODBC is (Open Database Connectivity): A standard or open application programming interface (API) for accessing a database. SQL Access Group,

More information

IBM WebSphere Adapter for Email 7.0.0.0. Quick Start Tutorials

IBM WebSphere Adapter for Email 7.0.0.0. Quick Start Tutorials IBM WebSphere Adapter for Email 7.0.0.0 Quick Start Tutorials Note: Before using this information and the product it supports, read the information in "Notices" on page 182. This edition applies to version

More information

Sending MIME Messages in LISTSERV DISTRIBUTE Jobs

Sending MIME Messages in LISTSERV DISTRIBUTE Jobs Whitepaper Sending MIME Messages in LISTSERV DISTRIBUTE Jobs August 25, 2010 Copyright 2010 L-Soft international, Inc. Information in this document is subject to change without notice. Companies, names,

More information

Email Basics. For more information on the Library and programs, visit www.bcpls.org BCPLS 08/10/2010 PEMA

Email Basics. For more information on the Library and programs, visit www.bcpls.org BCPLS 08/10/2010 PEMA Email Basics Email, short for Electronic Mail, consists of messages which are sent and received using the Internet. There are many different email services available that allow you to create an email account

More information

The basic groups of components are described below. Fig X- 1 shows the relationship between components on a network.

The basic groups of components are described below. Fig X- 1 shows the relationship between components on a network. Elements of Email Email Components There are a number of software components used to produce, send and transfer email. These components can be broken down as clients or servers, although some components

More information

Emails sent to the FaxFinder fax server must meet the following criteria to be processed for sending as a fax:

Emails sent to the FaxFinder fax server must meet the following criteria to be processed for sending as a fax: FaxFinder FFx30 T.37 Store & Forward Fax (T.37) Introduction The FaxFinder implements T.37 Store and Forward Fax (RFC2304) to convert emails into facsimile transmissions. The FaxFinder fax server accepts

More information

Setting up SQL Translation Framework OBE for Database 12cR1

Setting up SQL Translation Framework OBE for Database 12cR1 Setting up SQL Translation Framework OBE for Database 12cR1 Overview Purpose This tutorial shows you how to use have an environment ready to demo the new Oracle Database 12c feature, SQL Translation Framework,

More information

Integrated Migration Tool

Integrated Migration Tool IceWarp Unified Communications Integrated Migration Tool Version 10.4 Printed on 16 April, 2012 Contents Integrated Migration Tool 1 How It Works... 2 Performing Migration... 3 Set up the Domain in IceWarp

More information

Sun Microsystems, Inc JavaMail API Design Specification version 1.0b

Sun Microsystems, Inc JavaMail API Design Specification version 1.0b Sun Microsystems, Inc JavaMail API Design Specification version 1.0b Please send feedback to javamail@sun.com Java Mail 1.0b Version 1.0b March 27, 1998 JavaMail Copyright 1998 by Sun Microsystems Inc.

More information

Introduction. POP and IMAP Servers. MAC1028 June 2007

Introduction. POP and IMAP Servers. MAC1028 June 2007 MAC1028 June 2007 Getting Started with Thunderbird 2.0 For Macintosh OS X Author: John A. Montgomery Adapted to OS X by: Peter Lee Revised by Mitchell Ochi and Deanna Pasternak Introduction...1 POP and

More information

Make a folder named Lab3. We will be using Unix redirection commands to create several output files in that folder.

Make a folder named Lab3. We will be using Unix redirection commands to create several output files in that folder. CMSC 355 Lab 3 : Penetration Testing Tools Due: September 31, 2010 In the previous lab, we used some basic system administration tools to figure out which programs where running on a system and which files

More information

FAQs for Oracle iplanet Proxy Server 4.0

FAQs for Oracle iplanet Proxy Server 4.0 FAQs for Oracle iplanet Proxy Server 4.0 Get answers to the questions most frequently asked about Oracle iplanet Proxy Server Q: What is Oracle iplanet Proxy Server (Java System Web Proxy Server)? A: Oracle

More information

Internet and Intranet Protocols and Applications

Internet and Intranet Protocols and Applications Internet and Intranet Protocols and Applications Lecture 9x: Grading the SMTP Assignment March 26, 2003 Arthur Goldberg Computer Science Department New York University artg@cs.nyu.edu Basic Functionality

More information

ONE-TOUCH MAIL V 2.3 MANUAL

ONE-TOUCH MAIL V 2.3 MANUAL ONE-TOUCH MAIL V 2.3 MANUAL The Email Solution for a Mobile World One-Touch Mail combines a number of state-of-the-art technologies in one small package to give you access to vital information and keep

More information

Table of Contents. Introduction: 2. Settings: 6. Archive Email: 9. Search Email: 12. Browse Email: 16. Schedule Archiving: 18

Table of Contents. Introduction: 2. Settings: 6. Archive Email: 9. Search Email: 12. Browse Email: 16. Schedule Archiving: 18 MailSteward Manual Page 1 Table of Contents Introduction: 2 Settings: 6 Archive Email: 9 Search Email: 12 Browse Email: 16 Schedule Archiving: 18 Add, Search, & View Tags: 20 Set Rules for Tagging or Excluding:

More information

MAXMAILER USER GUIDE

MAXMAILER USER GUIDE MaxBulk Mailer MAXMAILER USER GUIDE For campus help, contact: 6-TECH Technical Support by e-mailing 6tech@uncg.edu or calling 336.256.TECH(8324) 1 The MaxBulk Mailer document window is made of five tab

More information

1 Introduction: Network Applications

1 Introduction: Network Applications 1 Introduction: Network Applications Some Network Apps E-mail Web Instant messaging Remote login P2P file sharing Multi-user network games Streaming stored video clips Internet telephone Real-time video

More information

SendMIME Pro Installation & Users Guide

SendMIME Pro Installation & Users Guide www.sendmime.com SendMIME Pro Installation & Users Guide Copyright 2002 SendMIME Software, All Rights Reserved. 6 Greer Street, Stittsville, Ontario Canada K2S 1H8 Phone: 613-831-4023 System Requirements

More information

Chapter 2 Application Layer. Lecture 5 FTP, Mail. Computer Networking: A Top Down Approach

Chapter 2 Application Layer. Lecture 5 FTP, Mail. Computer Networking: A Top Down Approach Chapter 2 Application Layer Lecture 5 FTP, Mail Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Application Layer 2-1 Chapter 2: outline 2.1 principles

More information

Human Translation Server

Human Translation Server Human Translation Server What is HTS Key benefits Costs Getting started Quote Confirmation Delivery Testing environment FAQ Functions reference Request a quotation Confirm the order Getting project status

More information

Networking Applications

Networking Applications Networking Dr. Ayman A. Abdel-Hamid College of Computing and Information Technology Arab Academy for Science & Technology and Maritime Transport Electronic Mail 1 Outline Introduction SMTP MIME Mail Access

More information

Building Server-Side XML Schema Validation

Building Server-Side XML Schema Validation Building Server-Side XML Schema Validation pdf help August 2001 With the advent of XML Schema there is the requirement to validate XML documents against their associated schemas.this article gives an introduction

More information

FF/EDM Intro Industry Goals/ Purpose Related GISB Standards (Common Codes, IETF) Definitions d 4 d 13 Principles p 6 p 13 p 14 Standards s 16 s 25

FF/EDM Intro Industry Goals/ Purpose Related GISB Standards (Common Codes, IETF) Definitions d 4 d 13 Principles p 6 p 13 p 14 Standards s 16 s 25 FF/EDM Intro Industry Goals/ Purpose GISB defined two ways in which flat files could be used to send transactions and transaction responses: interactive and batch. This section covers implementation considerations

More information

FTP and email. Computer Networks. FTP: the file transfer protocol

FTP and email. Computer Networks. FTP: the file transfer protocol Computer Networks and email Based on Computer Networking, 4 th Edition by Kurose and Ross : the file transfer protocol transfer file to/from remote host client/ model client: side that initiates transfer

More information

COSC344 Database Theory and Applications. Java and SQL. Lecture 12

COSC344 Database Theory and Applications. Java and SQL. Lecture 12 COSC344 Database Theory and Applications Lecture 12: Java and SQL COSC344 Lecture 12 1 Last Lecture Trigger Overview This Lecture Java & SQL Source: Lecture notes, Textbook: Chapter 12 JDBC documentation

More information

Hypercosm. Studio. www.hypercosm.com

Hypercosm. Studio. www.hypercosm.com Hypercosm Studio www.hypercosm.com Hypercosm Studio Guide 3 Revision: November 2005 Copyright 2005 Hypercosm LLC All rights reserved. Hypercosm, OMAR, Hypercosm 3D Player, and Hypercosm Studio are trademarks

More information

IOS 8: Configure IMAP/POP/SMTP

IOS 8: Configure IMAP/POP/SMTP IOS 8: Configure IMAP/POP/SMTP April 10, 2015 IOS 8: Configure IMAP/POP/SMTP Table of Contents Introduction... 3 Email Settings... 3 IMAP... 3 POP... 3 SMTP... 3 Process Overview... 3 Anatomy of an Email

More information

Remote login (Telnet):

Remote login (Telnet): SFWR 4C03: Computer Networks and Computer Security Feb 23-26 2004 Lecturer: Kartik Krishnan Lectures 19-21 Remote login (Telnet): Telnet permits a user to connect to an account on a remote machine. A client

More information

How To Use Gfi Mailarchiver On A Pc Or Macbook With Gfi Email From A Windows 7.5 (Windows 7) On A Microsoft Mail Server On A Gfi Server On An Ipod Or Gfi.Org (

How To Use Gfi Mailarchiver On A Pc Or Macbook With Gfi Email From A Windows 7.5 (Windows 7) On A Microsoft Mail Server On A Gfi Server On An Ipod Or Gfi.Org ( GFI MailArchiver for Exchange 4 Manual By GFI Software http://www.gfi.com Email: info@gfi.com Information in this document is subject to change without notice. Companies, names, and data used in examples

More information

Onset Computer Corporation

Onset Computer Corporation Onset, HOBO, and HOBOlink are trademarks or registered trademarks of Onset Computer Corporation for its data logger products and configuration/interface software. All other trademarks are the property

More information

Network Technologies

Network Technologies Network Technologies Glenn Strong Department of Computer Science School of Computer Science and Statistics Trinity College, Dublin January 28, 2014 What Happens When Browser Contacts Server I Top view:

More information

1.2 Using the GPG Gen key Command

1.2 Using the GPG Gen key Command Creating Your Personal Key Pair GPG uses public key cryptography for encrypting and signing messages. Public key cryptography involves your public key which is distributed to the public and is used to

More information

Practice Fusion API Client Installation Guide for Windows

Practice Fusion API Client Installation Guide for Windows Practice Fusion API Client Installation Guide for Windows Quickly and easily connect your Results Information System with Practice Fusion s Electronic Health Record (EHR) System Table of Contents Introduction

More information

Wireless Security Camera with the Arduino Yun

Wireless Security Camera with the Arduino Yun Wireless Security Camera with the Arduino Yun Created by Marc-Olivier Schwartz Last updated on 2014-08-13 08:30:11 AM EDT Guide Contents Guide Contents Introduction Connections Setting up your Temboo &

More information

Integrating Fax Sending Services

Integrating Fax Sending Services Integrating Fax Sending Services Developer Guide Enabled by Popfax Integrating Fax Sending Services Using SMTP API (mail to fax) DEVELOPER GUIDE Enabled by Popfax We recommend developers to register as

More information

JAVA WEB START OVERVIEW

JAVA WEB START OVERVIEW JAVA WEB START OVERVIEW White Paper May 2005 Sun Microsystems, Inc. Table of Contents Table of Contents 1 Introduction................................................................. 1 2 A Java Web Start

More information

sqlite driver manual

sqlite driver manual sqlite driver manual A libdbi driver using the SQLite embedded database engine Markus Hoenicka mhoenicka@users.sourceforge.net sqlite driver manual: A libdbi driver using the SQLite embedded database engine

More information

SSL Tunnels. Introduction

SSL Tunnels. Introduction SSL Tunnels Introduction As you probably know, SSL protects data communications by encrypting all data exchanged between a client and a server using cryptographic algorithms. This makes it very difficult,

More information

Published : 2013-12-02 License : None

Published : 2013-12-02 License : None K9 1 2 Published : 2013-12-02 License : None INTRODUCTION K-9 Mail is an email application (app) for Android phones or tablets. K-9 supports multiple mailboxes, each independently configurable. T his ability

More information

Interactive Reporting Emailer Manual

Interactive Reporting Emailer Manual Brief Overview of the IR Emailer The Interactive Reporting Emailer allows a user to schedule their favorites to be emailed to them on a regular basis. It accomplishes this by running once per day and sending

More information

The Web Pro Miami, Inc. 615 Santander Ave, Unit C Coral Gables, FL 33134 6505. T: 786.273.7774 info@thewebpro.com www.thewebpro.

The Web Pro Miami, Inc. 615 Santander Ave, Unit C Coral Gables, FL 33134 6505. T: 786.273.7774 info@thewebpro.com www.thewebpro. 615 Santander Ave, Unit C Coral Gables, FL 33134 6505 T: 786.273.7774 info@thewebpro.com www.thewebpro.com for v.1.06 and above Web Pro Manager is an open source website management platform that is easy

More information

IBM i. Networking E-mail. Version 7.2

IBM i. Networking E-mail. Version 7.2 IBM i Networking E-mail Version 7.2 IBM i Networking E-mail Version 7.2 Note Before using this information and the product it supports, read the information in Notices on page 53. This document may contain

More information

Integrated Migration Tool

Integrated Migration Tool IceWarp Unified Communications Version 11.3 Published on 1/6/2015 Contents... 4 Performing Migration... 5 Set up the Domain in IceWarp Server... 5 Create Migrator Email Account... 6 Configure Migration

More information

TAMS Analyzer 3 and Multi-User Projects. By Matthew Weinstein

TAMS Analyzer 3 and Multi-User Projects. By Matthew Weinstein TAMS Analyzer 3 and Multi-User Projects By Matthew Weinstein 1 I. Introduction TAMS has always had multiple users in mind, ever since TA1 supported signed tags, i.e., tags that had the coder s initials

More information

E-mail Settings 1 September 2015

E-mail Settings 1 September 2015 Training Notes 1 September 2015 PrintBoss can be configured to e-mail the documents it processes as PDF attachments. There are limitations to embedding documents in standard e-mails. PrintBoss solves these

More information

JUnit Howto. Blaine Simpson

JUnit Howto. Blaine Simpson JUnit Howto Blaine Simpson JUnit Howto Blaine Simpson Published $Date: 2005/09/19 15:15:02 $ Table of Contents 1. Introduction... 1 Available formats for this document... 1 Purpose... 1 Support... 2 What

More information

WS_FTP Professional 12

WS_FTP Professional 12 WS_FTP Professional 12 Tools Guide Contents CHAPTER 1 Introduction Ways to Automate Regular File Transfers...5 Check Transfer Status and Logs...6 Building a List of Files for Transfer...6 Transfer Files

More information

Implementing MDaemon as an Email Security Gateway to Exchange Server

Implementing MDaemon as an Email Security Gateway to Exchange Server Implementing MDaemon as an Email Security Gateway to Exchange Server Introduction MDaemon is widely deployed as a very effective antispam/antivirus gateway to Exchange. For optimum performance, we recommend

More information

Email. MIME is the protocol that was devised to allow non-ascii encoded content in an email and attached files to an email.

Email. MIME is the protocol that was devised to allow non-ascii encoded content in an email and attached files to an email. Email Basics: Email protocols were developed even before there was an Internet, at a time when no one was anticipating widespread use of digital graphics or even rich text format (fonts, colors, etc.),

More information

THE CHALLENGE OF ADMINISTERING WEBSITES OR APPLICATIONS THAT REQUIRE 24/7 ACCESSIBILITY

THE CHALLENGE OF ADMINISTERING WEBSITES OR APPLICATIONS THAT REQUIRE 24/7 ACCESSIBILITY THE CHALLENGE OF ADMINISTERING WEBSITES OR APPLICATIONS THAT REQUIRE 24/7 ACCESSIBILITY As the constantly growing demands of businesses and organizations operating in a global economy cause an increased

More information

Automatic Backup in Oracle Database

Automatic Backup in Oracle Database Automatic Backup in Oracle Database Miloš SÝKORA Slovak University of Technology Faculty of Informatics and Information Technologies Ilkovičova 3, 842 16 Bratislava, Slovakia msykora@gmail.com Abstract.

More information

A Brief Introduction to MySQL

A Brief Introduction to MySQL A Brief Introduction to MySQL by Derek Schuurman Introduction to Databases A database is a structured collection of logically related data. One common type of database is the relational database, a term

More information

Course Objectives. Database Applications. External applications. Course Objectives Interfacing. Mixing two worlds. Two approaches

Course Objectives. Database Applications. External applications. Course Objectives Interfacing. Mixing two worlds. Two approaches Course Objectives Database Applications Design Construction SQL/PSM Embedded SQL JDBC Applications Usage Course Objectives Interfacing When the course is through, you should Know how to connect to and

More information

OpenChange overview and current server implementation

OpenChange overview and current server implementation OpenChange overview and current server implementation 1 Introduction What is OpenChange? + Open Source implementation of Microsoft Exchange protocols under unix/linux + Exchange server replacement under

More information