Yet Another Proxy: a port mapping utility

Setting up the embedded web server

The embedded web server is called Bramaputra, and it is a full-fledged, ISAPI-compliant web (HTTP) server which is part of the Yap! executable.

This lets you control Yap! remotely, using a web browser. In the following description, we will assume that Yap! is in the C:\Yap directory.
Edit the file yap.ini, section [WebServer]:

  • Port=(any port, like 80; the default is 8087)
  • Root=(the full path of the directory where index.html is stored; the default is the www dir under the executable's dir).
  • DefaultIndex=(name of the default index file; the "default's default" is index.html)
  • Realm=(name of the authentication realm: e.g. yap)
    If you enter Realm=yap, then you'll have to create or edit a file named yap.users in the [/] section, with a list of users in the form userid=password, one per each row.

    When you are ready, you may start your browser locally on the machine that is hosting Yap!, and point to http://localhost:8087/

    If you edit the HTML files with an editor, you will find that they are substantial HTML code with some special added tags. A special tag has the form <!--#MyTag-->. When one of these tags is encountered, it is substituted textually with a context-dependent, dynamically generated string, and in the meanwhile, Yap! may perform a custom action.

    You may change and move anything, to customize the web pages. However, we suggest you use caution in moving the tags, because they have a functional role in Yap!.

    Using Yap! to build an SSL channel

    Yap! can leverage the Indy 9 facilities to build an SSL channel. All you have to do is:

  • Download the ssleay32.dll and libeay32.dll (free SSL handlers); though we can't give you the details, you will find links and info in the Indy Site. Oh well, the link is Intelicom in Slovenia (
  • Obtain a digital ceritificate (or generate it by yourself) following the instructions of Intelicom.
  • Edit the SSL.ini file with the path to the certificate files.

    After this procedure is complete, you may open a clear connection which may be redirected with SSL support.