in reply to passing $var to smtp subroutine

csarid:

Single quotes 'like this' prevent variables from being substituted. You want "double quotes".

Untested example:

my $foo='bar'; print "Foo is $foo\n"; print 'Foo is $foo\n';

should print:

Foo is bar Foo is $foo

...roboticus

Update: I should've mentioned: The term used when a variable is substituted into a string is "interpolation".