<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>src/osp_file.erl</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <filename>gen-join.pl</filename>
    </modified>
    <modified>
      <diff>@@ -20,6 +20,10 @@
 proto() -&gt;
     PROTO.
 
+%% @doc Opens a file for reading or writing
+fopen(Filename, Flags) -&gt;
+    osp_file:fopen(MOD, Filename, Flags).
+
 %% @doc Stores a value in the mnesia database
 store(Key, Val) -&gt;
     osp_mnesia:store(MOD_table, Key, Val).</diff>
      <filename>header.erl</filename>
    </modified>
    <modified>
      <diff>@@ -1,10 +1,11 @@
+
 % OSP Server Configuration
 
 % Use FQDNs
 -define(USEFQDN, false).
 
 % The name of this node (if the above is true, this must be a FQDN)
--define(NODENAME, 'master').
+-define(NODENAME, 'master@localhost').
 
 % Port the admin console should listen on
 -define(ADMINPORT, 9876).
@@ -17,3 +18,9 @@
 
 % Allowed diskless client IPs
 -define(ALLOWED_DISKLESS, ['127.0.0.1']).
+
+% Whether the application filesystem is just on the master node, or shared (like NFS)
+-define(SHARED_FS, false).
+
+% The prefix of the application file area
+-define(FS_PREFIX, &quot;/tmp&quot;).</diff>
      <filename>include/conf.hrl</filename>
    </modified>
    <modified>
      <diff>@@ -1,4 +1,5 @@
 #!/bin/bash
 
 echo &quot;Setting up OSP&quot;
+epmd -daemon
 erl -smp auto -pa ./ebin -detached -run osp setup</diff>
      <filename>setup-osp.sh</filename>
    </modified>
    <modified>
      <diff>@@ -44,7 +44,8 @@ handlecommand(Sock, Msg) -&gt;
 	    F = fun(Node) -&gt; sendf(Sock, &quot;~p: ~f~n&quot;, [Node, round(100 * rpc:call(Node, cpu_sup, avg1, []) / 256) / 100]) end,
 	    sendf(Sock, &quot;Nodes in the cluster and their CPU Utilization: ~n&quot;, []),
 	    lists:map(F, [node() | nodes()]),
-	    sendf(Sock, &quot;The following IPs: ~p are allowed to be diskless~n&quot;, [erl_boot_server:which_slaves()]);
+	    send(Sock, &quot;The following IPs are allowed to be diskless:\r\n&quot;),
+	    send(Sock, get_ok_slaves());
 	&quot;quit&quot; -&gt;
 	    close(Sock),
 	    exit(normal);
@@ -111,6 +112,7 @@ handlecommand(Sock, Msg) -&gt;
 	    end
     end.
 
+%% @todo This needs to update on every start of a new application
 bkup_db(Node, Type) -&gt;
     Tables = mnesia:system_info(tables),
     F = fun(TableName) -&gt;
@@ -139,6 +141,15 @@ start_db(Node, App) -&gt;
     rpc:call(Node, mnesia, wait_for_tables, [[TableName], 1000]),
     ok.
 
+ip_to_string({A, B, C, D}) -&gt;
+    erlang:integer_to_list(A) ++ &quot;.&quot; ++ erlang:integer_to_list(B) ++ &quot;.&quot; ++ erlang:integer_to_list(C) ++ &quot;.&quot; ++ erlang:integer_to_list(D).
+
+get_ok_slaves() -&gt;
+    Slaves = erl_boot_server:which_slaves(),
+    Fun = fun({NM, IP}, A) -&gt;
+		  A ++ &quot;\tIP: &quot; ++ ip_to_string(IP) ++ &quot; Netmask: &quot; ++ ip_to_string(NM) ++ &quot;\r\n&quot;
+	  end,
+    lists:foldl(Fun, [], Slaves).
 
 stop_servlet(App, Node, Sock) -&gt;
     case lists:member(Node, [node() | nodes()]) of</diff>
      <filename>src/osp_admin.erl</filename>
    </modified>
    <modified>
      <filename>start-osp.sh</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>1635b7a05f5138823728ccd47bc1504bda53b956</id>
    </parent>
  </parents>
  <author>
    <name>Jacob I. Torrey</name>
    <email>torreyji@clarkson.edu</email>
  </author>
  <url>http://github.com/ranok/open-server-platform/commit/71b8931f76fec83d6bc5ee887626d2b6f31f4f82</url>
  <id>71b8931f76fec83d6bc5ee887626d2b6f31f4f82</id>
  <committed-date>2009-04-15T16:01:21-07:00</committed-date>
  <authored-date>2009-04-15T16:01:21-07:00</authored-date>
  <message>Added a file IO library and included it into the header, but have yet to test it.
Also made the diskless IP printing much prettier and fixed a bug where epmd is not getting started all the time.</message>
  <tree>e50ce1ce41d72e80ef79a1a49ab8b4278eb5c92d</tree>
  <committer>
    <name>Jacob I. Torrey</name>
    <email>torreyji@clarkson.edu</email>
  </committer>
</commit>
