Lyris User's Guide
[previous] [next] [contents]
If you get the "Protocol Not Supported" Error
Table of Contents
· Introduction
· Email Commands
· Web Interface for Users
· Server Administrator
· Site Administrator
· List Administrator
· Other Topics
· Add-On Packages
· Installing and Upgrading
· · Installing Lyris List Manager
· · Installing Lyris List Manager on Unix
· · · Basic Unix Installation Instructions
· · · After Installing Lyris on Unix
· · · Getting Help
· · · How to Install Lyris List Manager by Hand
· · · How to Upgrade Lyris List Manager by Hand
· · · How to Install the Web Interface on a separate machine
· · · · If you get the "Protocol Not Supported" Error
· · · If Lyris List Manager Will Not Run
· · · Unix Directory Permissions Needed
· · · Making your Unix Mail Server and Lyris List Manager coexist
· · Mail Server Coexistence
· · Upgrading to Lyris List Manager from Another List Manager
· · Troubleshooting
· Appendix
· Frequently Asked Questions

If you get the "Protocol Not Supported" Error

If running "perl lyris.pl" gives you this error:

    # perl lyris.pl
    Content-type: text/html

    create socket failed: Protocol not supported
    Died at lyrislib.pl line 183.

Then it is likely that you copied by hand the "lyrislib.pl" to/from a Solaris machine, and that you need to make a slight modification to it to have it work on your system.

TCP/IP sockets on Solaris have slightly different values than on other platforms, that is why the "lyrislib.pl" file must be changed if it comes from or to a Solaris system. When we ship the Lyris List Manager for a particular platform, we provide the correct values. However, if you copy the lyrislib.pl file by hand, you might not have the right values.

To fix this problem open up the "lyrislib.pl" file in a text editor, and around line 120, you will see lines that say:

    #################
    # SOLARIS socket values
    $lyris::AF_INET = 2;
    $lyris::SOCK_STREAM = 2;

    #################
    # WINDOWS (and most others) socket values
    #$lyris::AF_INET = 2;
    #$lyris::SOCK_STREAM = 1;

If you are on a Solaris system, make sure that the top lines are the ones without the pound sign in front of each line (which is how it is displayed above). If you are on a non-Solaris system, make sure that the bottom values do no have pound signs, but that the Solaris ones do, as in

    #################
    # SOLARIS socket values
    #$lyris::AF_INET = 2;
    #$lyris::SOCK_STREAM = 2;

    #################
    # WINDOWS (and most others) socket values
    $lyris::AF_INET = 2;
    $lyris::SOCK_STREAM = 1;

Save the file, and run "perl lyris.pl". If you still get the "protocol not supported" error, then it is likely that you have more than one copy of "lyrislib.pl" on your system. Make sure you that the other copies have this patch as well.

Other pages which link to this page:
  • How to Install the Web Interface on a separate machine
  • Page 520 of 629