[haiku-commits] r35081 - in haiku/trunk/src/add-ons/kernel/file_systems: . netfs netfs/authentication_server netfs/client netfs/headers/fs ...

  • From: superstippi@xxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Thu, 14 Jan 2010 22:56:17 +0100 (CET)

Author: stippi
Date: 2010-01-14 22:56:16 +0100 (Thu, 14 Jan 2010)
New Revision: 35081
Changeset: http://dev.haiku-os.org/changeset/35081/haiku

Added:
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/AuthenticationPanel.cpp
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/headers/shared/DebugSupport.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/headers/shared/SLList.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/shared/DebugSupport.cpp
Removed:
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/AuthenticationPanel.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/headers/shared/KMessage.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/shared/KMessage.cpp
Modified:
   haiku/trunk/src/add-ons/kernel/file_systems/Jamfile
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/Jamfile
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/AuthenticationServer.cpp
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/AuthenticationServer.h
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/Jamfile
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/AuthenticationServer.cpp
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ExtendedServerInfo.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ExtendedServerInfo.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/Jamfile
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/QueryIterator.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/QueryIterator.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/QueryManager.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/RootVolume.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ServerConnection.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ServerConnection.h
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ServerConnectionProvider.cpp
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ServerConnectionProvider.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ServerManager.cpp
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ServerQueryIterator.cpp
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ServerQueryIterator.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ServerVolume.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ShareAttrDir.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ShareAttrDir.h
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ShareAttrDirIterator.cpp
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ShareAttrDirIterator.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ShareNode.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ShareNode.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ShareVolume.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ShareVolume.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/VirtualDir.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/VirtualDir.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/VirtualVolume.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/Volume.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/Volume.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/VolumeEvent.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/VolumeEvent.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/VolumeManager.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/VolumeSupport.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/netfs.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/headers/fs/netfs_ioctl.h
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/headers/shared/BlockingQueue.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/headers/shared/FSObject.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/headers/shared/NetAddress.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/headers/shared/Request.h
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/headers/shared/RequestUnflattener.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/headers/shared/Requests.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/headers/shared/ServerInfo.h
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/headers/shared/TaskManager.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/headers/shared/Utils.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/netfs_config/Jamfile
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/netfs_config/netfs_config.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/netfs_server_prefs/Jamfile
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/AttributeDirectory.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/AttributeDirectory.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/ClientConnection.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/ClientVolume.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/ClientVolume.h
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/ConnectionListenerFactory.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/Directory.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/Directory.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/Entry.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/Entry.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/EntryRef.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/FDManager.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/FDManager.h
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/GlobalBlockerPool.cpp
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/InsecureConnectionListener.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/Jamfile
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/Lockable.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/Lockable.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/NetFSServer.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/Node.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/Node.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/NodeHandle.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/NodeHandle.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/NodeHandleMap.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/NodeMonitor.cpp
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/NodeMonitoringEvent.cpp
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/NodeMonitoringEvent.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/Path.h
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/PortConnectionListener.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/QueryDomain.h
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/SecurityContext.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/SecurityContext.h
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/StatisticsManager.cpp
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/UserSecurityContext.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/Volume.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/VolumeManager.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/server/VolumeManager.h
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/shared/AbstractConnection.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/shared/Blocker.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/shared/BlockerPool.cpp
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/shared/ConnectionFactory.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/shared/FSObject.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/shared/InsecureChannel.cpp
   
haiku/trunk/src/add-ons/kernel/file_systems/netfs/shared/InsecureConnection.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/shared/NetAddress.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/shared/NodeInfo.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/shared/PortChannel.cpp
   haiku/trunk/src/add-ons/kernel/file_systems/netfs/shared/PortConnection.cpp
   [... truncated: 10 changed files follow ...]
Log:
Copied Ingo's netfs from the dark pit in which it was forgotten to something
more visible and ported it to the current UserlandFS server (and GCC4). It still
uses the R5 file system API, which the UserlandFS conveniently still provides
support for. It compiles and links, but is otherwise still untested. The changes
I am alsmost confident that I didn't change any semantics. That is unless
HashMap, HashString and DoublyLinkedList work differently enough to make any of
the netfs code break.


Modified: haiku/trunk/src/add-ons/kernel/file_systems/Jamfile
===================================================================
--- haiku/trunk/src/add-ons/kernel/file_systems/Jamfile 2010-01-14 21:51:48 UTC 
(rev 35080)
+++ haiku/trunk/src/add-ons/kernel/file_systems/Jamfile 2010-01-14 21:56:16 UTC 
(rev 35081)
@@ -6,6 +6,7 @@
 SubInclude HAIKU_TOP src add-ons kernel file_systems fat ;
 SubInclude HAIKU_TOP src add-ons kernel file_systems googlefs ;
 SubInclude HAIKU_TOP src add-ons kernel file_systems iso9660 ;
+SubInclude HAIKU_TOP src add-ons kernel file_systems netfs ;
 SubInclude HAIKU_TOP src add-ons kernel file_systems nfs ;
 SubInclude HAIKU_TOP src add-ons kernel file_systems ntfs ;
 SubInclude HAIKU_TOP src add-ons kernel file_systems packagefs ;

Modified: haiku/trunk/src/add-ons/kernel/file_systems/netfs/Jamfile
===================================================================
--- 
haiku/trunk/src/tests/add-ons/kernel/file_systems/userlandfs/r5/src/test/netfs/Jamfile
      2010-01-13 09:32:50 UTC (rev 35042)
+++ haiku/trunk/src/add-ons/kernel/file_systems/netfs/Jamfile   2010-01-14 
21:56:16 UTC (rev 35081)
@@ -1,13 +1,8 @@
-SubDir HAIKU_TOP src tests add-ons kernel file_systems userlandfs r5 src test
-       netfs ;
+SubDir HAIKU_TOP src add-ons kernel file_systems netfs ;
 
-SubInclude HAIKU_TOP src tests add-ons kernel file_systems userlandfs r5 src
-       test netfs authentication_server ;
-SubInclude HAIKU_TOP src tests add-ons kernel file_systems userlandfs r5 src
-       test netfs client ;
-SubInclude HAIKU_TOP src tests add-ons kernel file_systems userlandfs r5 src
-       test netfs netfs_config ;
-SubInclude HAIKU_TOP src tests add-ons kernel file_systems userlandfs r5 src
-       test netfs netfs_server_prefs ;
-SubInclude HAIKU_TOP src tests add-ons kernel file_systems userlandfs r5 src
-       test netfs server ;
+SubInclude HAIKU_TOP src add-ons kernel file_systems netfs
+       authentication_server ;
+SubInclude HAIKU_TOP src add-ons kernel file_systems netfs client ;
+SubInclude HAIKU_TOP src add-ons kernel file_systems netfs netfs_config ;
+SubInclude HAIKU_TOP src add-ons kernel file_systems netfs netfs_server_prefs ;
+SubInclude HAIKU_TOP src add-ons kernel file_systems netfs server ;

Copied: 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/AuthenticationPanel.cpp
 (from rev 35043, 
haiku/trunk/src/tests/add-ons/kernel/file_systems/userlandfs/r5/src/test/netfs/authentication_server/AuthenticationPanel.cpp)
===================================================================
--- 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/AuthenticationPanel.cpp
                             (rev 0)
+++ 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/AuthenticationPanel.cpp
     2010-01-14 21:56:16 UTC (rev 35081)
@@ -0,0 +1,238 @@
+// AuthenticationPanel.cpp
+
+#include <stdio.h>
+
+#include <Screen.h>
+
+#include <Box.h>
+#include <Button.h>
+#include <CheckBox.h>
+#include <Message.h>
+#include <String.h>
+#include <StringView.h>
+#include <TextControl.h>
+
+#include "AuthenticationPanel.h"
+
+enum {
+       MSG_PANEL_OK,
+       MSG_PANEL_CANCEL,
+};
+
+// constructor
+AuthenticationPanel::AuthenticationPanel(BRect frame)
+       : Panel(frame, "Name Panel",
+                       B_TITLED_WINDOW_LOOK, B_MODAL_APP_WINDOW_FEEL,
+                       B_ASYNCHRONOUS_CONTROLS | B_NOT_RESIZABLE | 
B_NOT_ZOOMABLE),
+         fCancelled(false),
+         fExitSem(B_ERROR)
+{
+       fExitSem = create_sem(0, "Authentication Panel");
+
+       BRect controlFrame(0.0, 0.0, frame.Width(), 15.0);
+
+       fNameTC = new BTextControl(controlFrame, "name", "Username", "", NULL,
+                                                          B_FOLLOW_LEFT | 
B_FOLLOW_RIGHT);
+
+       fPassTC = new BTextControl(controlFrame, "pass", "Password", "", NULL,
+                                                          B_FOLLOW_LEFT | 
B_FOLLOW_RIGHT);
+
+       fKeepUsingCB = new BCheckBox(controlFrame, "again",
+                                                                "Use login for 
all shares of this host",
+                                                                NULL, 
B_FOLLOW_LEFT | B_FOLLOW_RIGHT);
+
+       BRect buttonFrame(0.0, 0.0, 20.0, 15.0);
+       fOkB = new BButton(buttonFrame, "ok", "OK",
+                                          new BMessage(MSG_PANEL_OK));
+       fCancelB = new BButton(buttonFrame, "cancel", "Cancel",
+                                                  new 
BMessage(MSG_PANEL_CANCEL));
+
+}
+
+// destructor
+AuthenticationPanel::~AuthenticationPanel()
+{
+       delete_sem(fExitSem);
+}
+
+// QuitRequested
+bool
+AuthenticationPanel::QuitRequested()
+{
+       fCancelled = true;
+       release_sem(fExitSem);
+       return false;
+}
+
+// MessageReceived
+void
+AuthenticationPanel::MessageReceived(BMessage* message)
+{
+       switch (message->what) {
+               case MSG_PANEL_CANCEL:
+                       Cancel();
+                       break;
+               case MSG_PANEL_OK: {
+                       release_sem(fExitSem);
+                       break;
+               }
+               default:
+                       Panel::MessageReceived(message);
+       }
+}
+
+// GetAuthentication
+bool
+AuthenticationPanel::GetAuthentication(const char* server,
+                                                                          
const char* share,
+                                                                          
const char* previousUser,
+                                                                          
const char* previousPass,
+                                                                          bool 
previousKeep,
+                                                                          bool 
badPassword,
+                                                                          
char* user, char* pass, bool* keep)
+{
+       // configure panel and layout controls
+       BString helper("Enter login for: ");
+       helper << (server ? server : "<unkown host>") << "/";
+       helper << (share ? share : "<unkown share>");
+
+       // ignore the previous password, if it didn't work
+       if (badPassword)
+               previousPass = NULL;
+
+       SetTitle(helper.String());
+
+       BPoint offset(0.0, 5.0);
+
+       fNameTC->SetText(previousUser ? previousUser : "");
+       fNameTC->ResizeToPreferred();
+       fNameTC->MoveTo(BPoint(10.0, 10.0));
+
+       fPassTC->SetText(previousPass ? previousPass : "");
+       fPassTC->ResizeToPreferred();
+       fPassTC->MoveTo(fNameTC->Frame().LeftBottom() + offset);
+
+       fKeepUsingCB->SetValue(previousKeep);
+       fKeepUsingCB->ResizeToPreferred();
+       fKeepUsingCB->MoveTo(fPassTC->Frame().LeftBottom() + offset);
+
+       fCancelB->ResizeToPreferred();
+
+       fOkB->ResizeToPreferred();
+       fOkB->MoveTo(fKeepUsingCB->Frame().RightBottom() + offset + offset - 
fOkB->Frame().RightTop());
+
+       fCancelB->MoveTo(fOkB->Frame().LeftTop() - BPoint(10.0, 0.0) - 
fCancelB->Frame().RightTop());
+
+       BRect frame(fNameTC->Frame().LeftTop(), fOkB->Frame().RightBottom());
+
+       // work arround buggy BTextControl resizing
+       BRect nameFrame = fNameTC->Frame();
+       BRect passFrame = fPassTC->Frame();
+
+       nameFrame.right = nameFrame.left + frame.Width();
+       passFrame.right = passFrame.left + frame.Width();
+
+       float divider = fNameTC->Divider();
+
+       if (fPassTC->Divider() > divider)
+               divider = fPassTC->Divider();
+
+       delete fNameTC;
+       fNameTC = new BTextControl(nameFrame, "name", "Username", "", NULL,
+                                                          B_FOLLOW_LEFT | 
B_FOLLOW_RIGHT);
+       fNameTC->SetText(previousUser ? previousUser : "");
+
+       delete fPassTC;
+       fPassTC = new BTextControl(passFrame, "pass", "Password", "", NULL,
+                                                          B_FOLLOW_LEFT | 
B_FOLLOW_RIGHT);
+
+       fPassTC->TextView()->HideTyping(true);
+       fPassTC->SetText(previousPass ? previousPass : "");
+
+       fNameTC->SetDivider(divider);
+       fPassTC->SetDivider(divider);
+
+
+       // create background view
+       frame.InsetBy(-10.0, -10.0);
+
+       BBox* bg = new BBox(frame, "bg", B_FOLLOW_ALL,
+                                               B_FRAME_EVENTS | B_WILL_DRAW | 
B_NAVIGABLE_JUMP,
+                                               B_PLAIN_BORDER);
+
+       bg->AddChild(fNameTC);
+       bg->AddChild(fPassTC);
+       bg->AddChild(fKeepUsingCB);
+
+       bg->AddChild(fOkB);
+       bg->AddChild(fCancelB);
+
+       frame.OffsetTo(-10000.0, -10000.0);
+       frame = _CalculateFrame(frame);
+       MoveTo(frame.LeftTop());
+       ResizeTo(frame.Width(), frame.Height());
+
+       AddChild(bg);
+       SetDefaultButton(fOkB);
+       fNameTC->MakeFocus(true);
+
+       // start window thread
+       Show();
+
+       // let the window jitter, if the previous password was invalid
+       if (badPassword) {
+               BPoint leftTop = Frame().LeftTop();
+               const float jitterOffsets[] = { -10, 0, 10, 0 };
+               const int32 jitterOffsetCount = sizeof(jitterOffsets) / 
sizeof(float);
+               for (int32 i = 0; i < 30; i++) {
+                       float offset = jitterOffsets[i % jitterOffsetCount];
+                       MoveTo(leftTop.x + offset, leftTop.y);
+                       snooze(10000);
+               }
+               MoveTo(leftTop);
+       }
+
+       // block calling thread
+       acquire_sem(fExitSem);
+
+       // window wants to quit
+       Lock();
+
+       sprintf(user, fNameTC->Text());
+       sprintf(pass, fPassTC->Text());
+       *keep = fKeepUsingCB->Value() == B_CONTROL_ON;
+
+       Quit();
+       return fCancelled;
+}
+
+// Cancel
+void
+AuthenticationPanel::Cancel()
+{
+       fCancelled = true;
+//     release_sem(fExitSem);
+
+       Panel::Cancel();
+}
+
+
+// _CalculateFrame
+BRect
+AuthenticationPanel::_CalculateFrame(BRect frame)
+{
+       BScreen screen(B_MAIN_SCREEN_ID);
+       BRect screenFrame = screen.Frame();
+       if (!screenFrame.Contains(frame)) {
+               float width = frame.Width();
+               float height = frame.Height();
+               BPoint center;
+               center.x = screenFrame.left + screenFrame.Width() / 2.0;
+               center.y = screenFrame.top + screenFrame.Height() / 4.0;
+               frame.left = center.x - width / 2.0;
+               frame.right = frame.left + width;
+               frame.top = center.y - height / 2.0;
+               frame.bottom = frame.top + height;
+       }
+       return frame;
+}

Modified: 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/AuthenticationServer.cpp
===================================================================
--- 
haiku/trunk/src/tests/add-ons/kernel/file_systems/userlandfs/r5/src/test/netfs/authentication_server/AuthenticationServer.cpp
       2010-01-13 09:32:50 UTC (rev 35042)
+++ 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/AuthenticationServer.cpp
    2010-01-14 21:56:16 UTC (rev 35081)
@@ -1,14 +1,19 @@
 // AuthenticationServer.cpp
 
+#include "AuthenticationServer.h"
+
+#include <new>
+
+#include <HashMap.h>
+#include <HashString.h>
+#include <util/KMessage.h>
+
 #include "AuthenticationPanel.h"
-#include "AuthenticationServer.h"
 #include "AuthenticationServerDefs.h"
-#include "Debug.h"
-#include "HashMap.h"
-#include "KMessage.h"
-#include "String.h"
+#include "DebugSupport.h"
 #include "TaskManager.h"
 
+
 // Authentication
 class AuthenticationServer::Authentication {
 public:
@@ -47,8 +52,8 @@
        }
 
 private:
-       String  fUser;
-       String  fPassword;
+       HashString      fUser;
+       HashString      fPassword;
 };
 
 // ServerKey
@@ -95,8 +100,8 @@
        }
 
 private:
-       String  fContext;
-       String  fServer;
+       HashString      fContext;
+       HashString      fServer;
 };
 
 // ServerEntry
@@ -146,7 +151,7 @@
                if (authentication)
                        return authentication->SetTo(user, password);
                // the entry does not exist yet: create and add a new one
-               authentication = new(nothrow) Authentication;
+               authentication = new(std::nothrow) Authentication;
                if (!authentication)
                        return B_NO_MEMORY;
                status_t error = authentication->SetTo(user, password);
@@ -163,7 +168,7 @@
        }
 
 private:
-       typedef HashMap<String, Authentication*> AuthenticationMap;
+       typedef HashMap<HashString, Authentication*> AuthenticationMap;
 
        Authentication          fDefaultAuthentication;
        bool                            fUseDefaultAuthentication;
@@ -200,11 +205,11 @@
                char user[B_OS_NAME_LENGTH];
                char password[B_OS_NAME_LENGTH];
                bool keep = true;
-               fPanel = new(nothrow) AuthenticationPanel();
+               fPanel = new(std::nothrow) AuthenticationPanel();
                status_t error = (fPanel ? B_OK : B_NO_MEMORY);
                bool cancelled = false;
-               String defaultUser;
-               String defaultPassword;
+               HashString defaultUser;
+               HashString defaultPassword;
                fAuthenticationServer->_GetAuthentication(fContext.GetString(),
                        fServer.GetString(), NULL, &defaultUser, 
&defaultPassword);
                if (error == B_OK) {
@@ -239,9 +244,9 @@
 
 private:
        AuthenticationServer*   fAuthenticationServer;
-       String                                  fContext;
-       String                                  fServer;
-       String                                  fShare;
+       HashString                              fContext;
+       HashString                              fServer;
+       HashString                              fShare;
        bool                                    fBadPassword;
        port_id                                 fReplyPort;
        int32                                   fReplyToken;
@@ -283,7 +288,7 @@
 AuthenticationServer::Init()
 {
        // create the server entry map
-       fServerEntries = new(nothrow) ServerEntryMap;
+       fServerEntries = new(std::nothrow) ServerEntryMap;
        if (!fServerEntries)
                return B_NO_MEMORY;
        status_t error = fServerEntries->InitCheck();
@@ -332,26 +337,26 @@
                request.FindBool("badPassword", &badPassword);
                if (!context || !server || !share)
                        continue;
-               String foundUser;
-               String foundPassword;
+               HashString foundUser;
+               HashString foundPassword;
                if (!badPassword && _GetAuthentication(context, server, share,
                        &foundUser, &foundPassword)) {
                        _SendRequestReply(request.ReplyPort(), 
request.ReplyToken(),
                                error, false, foundUser.GetString(), 
foundPassword.GetString());
                } else {
                        // we need to ask the user: create a task that does it
-                       UserDialogTask* task = new(nothrow) 
UserDialogTask(this, context,
-                               server, share, badPassword, request.ReplyPort(),
+                       UserDialogTask* task = new(std::nothrow) 
UserDialogTask(this,
+                               context, server, share, badPassword, 
request.ReplyPort(),
                                request.ReplyToken());
                        if (!task) {
-                               ERROR(("AuthenticationServer::_RequestThread(): 
ERROR: "
-                                       "failed to allocate "));
+                               ERROR("AuthenticationServer::_RequestThread(): 
ERROR: "
+                                       "failed to allocate ");
                                continue;
                        }
                        status_t error = taskManager.RunTask(task);
                        if (error != B_OK) {
-                               ERROR(("AuthenticationServer::_RequestThread(): 
Failed to "
-                                       "start server info task: %s\n", 
strerror(error)));
+                               ERROR("AuthenticationServer::_RequestThread(): 
Failed to "
+                                       "start server info task: %s\n", 
strerror(error));
                                continue;
                        }
                }
@@ -365,12 +370,13 @@
 */
 bool
 AuthenticationServer::_GetAuthentication(const char* context,
-       const char* server, const char* share, String* user, String* password)
+       const char* server, const char* share, HashString* user,
+       HashString* password)
 {
        if (!context || !server || !user || !password)
                return B_BAD_VALUE;
        // get the server entry
-       AutoLocker<Locker> _(fLock);
+       AutoLocker<BLocker> _(fLock);
        ServerKey key(context, server);
        ServerEntry* serverEntry = fServerEntries->Get(key);
        if (!serverEntry)
@@ -395,13 +401,13 @@
        const char* server, const char* share, const char* user,
        const char* password, bool makeDefault)
 {
-       AutoLocker<Locker> _(fLock);
+       AutoLocker<BLocker> _(fLock);
        ServerKey key(context, server);
        // get the server entry
        ServerEntry* serverEntry = fServerEntries->Get(key);
        if (!serverEntry) {
                // server entry does not exist yet: create a new one
-               serverEntry = new(nothrow) ServerEntry;
+               serverEntry = new(std::nothrow) ServerEntry;
                if (!serverEntry)
                        return B_NO_MEMORY;
                status_t error = fServerEntries->Put(key, serverEntry);

Modified: 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/AuthenticationServer.h
===================================================================
--- 
haiku/trunk/src/tests/add-ons/kernel/file_systems/userlandfs/r5/src/test/netfs/authentication_server/AuthenticationServer.h
 2010-01-13 09:32:50 UTC (rev 35042)
+++ 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/AuthenticationServer.h
      2010-01-14 21:56:16 UTC (rev 35081)
@@ -4,9 +4,9 @@
 #define NETFS_AUTHENTICATION_SERVER_H
 
 #include <Application.h>
+#include <Locker.h>
 
-#include "Locker.h"
-#include "String.h"
+#include "HashString.h"
 
 class AuthenticationServer : public BApplication {
 public:
@@ -20,7 +20,7 @@
 
                        bool                            
_GetAuthentication(const char* context,
                                                                        const 
char* server, const char* share,
-                                                                       String* 
user, String* password);
+                                                                       
HashString* user, HashString* password);
                        status_t                        
_AddAuthentication(const char* context,
                                                                        const 
char* server, const char* share,
                                                                        const 
char* user, const char* password,
@@ -38,7 +38,7 @@
                        class UserDialogTask;
                        friend class UserDialogTask;
 
-                       Locker                          fLock;
+                       BLocker                         fLock;
                        port_id                         fRequestPort;
                        thread_id                       fRequestThread;
                        ServerEntryMap*         fServerEntries;

Modified: 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/Jamfile
===================================================================
--- 
haiku/trunk/src/tests/add-ons/kernel/file_systems/userlandfs/r5/src/test/netfs/authentication_server/Jamfile
        2010-01-13 09:32:50 UTC (rev 35042)
+++ 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/authentication_server/Jamfile 
    2010-01-14 21:56:16 UTC (rev 35081)
@@ -1,35 +1,24 @@
-SubDir HAIKU_TOP src tests add-ons kernel file_systems userlandfs r5 src test
-       netfs authentication_server ;
+SubDir HAIKU_TOP src add-ons kernel file_systems netfs authentication_server ;
 
-SetSubDirSupportedPlatforms r5 bone dano ;
+UsePrivateHeaders shared ;
+UsePrivateKernelHeaders ;
 
-local userlandFSTop = [ FDirName $(HAIKU_TOP) src tests add-ons kernel
-       file_systems userlandfs r5 ] ;
-local userlandFSIncludes = [ FDirName $(userlandFSTop) headers ] ;
+SubDirHdrs [ FDirName $(SUBDIR) $(DOTDOT) headers authentication_server ] ;
+SubDirHdrs [ FDirName $(SUBDIR) $(DOTDOT) headers shared ] ;
 
-SubDirHdrs [ FDirName $(userlandFSIncludes) shared ] ;
-SubDirHdrs [ FDirName $(userlandFSTop) src test netfs headers
-                                         authentication_server ] ;
-SubDirHdrs [ FDirName $(userlandFSTop) src test netfs headers shared ] ;
+SEARCH_SOURCE += [ FDirName $(SUBDIR) $(DOTDOT) shared ] ;
 
-SEARCH_SOURCE += [ FDirName $(userlandFSTop) src shared ] ;
-SEARCH_SOURCE += [ FDirName $(userlandFSTop) src test netfs shared ] ;
-
 DEFINES += USER=1 ;
 DEFINES += DEBUG_APP="\\\"AuthenticationServer\\\"" ;
 
-Application <test>AuthenticationServer
-       : Debug.cpp
-         Locker.cpp
-#        Referencable.cpp
-         String.cpp
+Application AuthenticationServer
+       : DebugSupport.cpp
 
          AuthenticationServerDefs.cpp
-         KMessage.cpp
          TaskManager.cpp
 
          AuthenticationPanel.cpp
          AuthenticationServer.cpp
          Panel.cpp
-       : be
+       : be $(TARGET_LIBSUPC++) libshared.a
 ;

Modified: 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/AuthenticationServer.cpp
===================================================================
--- 
haiku/trunk/src/tests/add-ons/kernel/file_systems/userlandfs/r5/src/test/netfs/client/AuthenticationServer.cpp
      2010-01-13 09:32:50 UTC (rev 35042)
+++ 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/AuthenticationServer.cpp
   2010-01-14 21:56:16 UTC (rev 35081)
@@ -1,9 +1,13 @@
 // AuthenticationServer.cpp
 
 #include "AuthenticationServer.h"
+
+#include <string.h>
+
+#include <util/KMessage.h>
+
 #include "AuthenticationServerDefs.h"
 #include "Compatibility.h"
-#include "KMessage.h"
 
 // constructor
 AuthenticationServer::AuthenticationServer()
@@ -72,7 +76,7 @@
                *_cancelled = cancelled;
        if (cancelled)
                return B_OK;
-       // user/password 
+       // user/password
        const char* foundUser = NULL;
        const char* foundPassword = NULL;
        if (reply.FindString("user", &foundUser) != B_OK

Modified: 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ExtendedServerInfo.cpp
===================================================================
--- 
haiku/trunk/src/tests/add-ons/kernel/file_systems/userlandfs/r5/src/test/netfs/client/ExtendedServerInfo.cpp
        2010-01-13 09:32:50 UTC (rev 35042)
+++ 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ExtendedServerInfo.cpp 
    2010-01-14 21:56:16 UTC (rev 35081)
@@ -5,8 +5,9 @@
 
 // constructor
 ExtendedShareInfo::ExtendedShareInfo()
-       : Referencable(true),
-         fShareName()
+       :
+       BReferenceable(true),
+       fShareName()
 {
 }
 
@@ -33,9 +34,10 @@
 
 // constructor
 ExtendedServerInfo::ExtendedServerInfo(const NetAddress& address)
-       : Referencable(true),
-         fAddress(address),
-         fState(0)
+       :
+       BReferenceable(true),
+       fAddress(address),
+       fState(0)
 {
 }
 
@@ -47,7 +49,7 @@
                ShareInfoAt(i)->RemoveReference();
 }
 
-// GetAddress 
+// GetAddress
 const NetAddress&
 ExtendedServerInfo::GetAddress() const
 {
@@ -104,7 +106,7 @@
                return B_BAD_VALUE;
        // set name and connection method
        const char* name = serverInfo->GetServerName();
-       String addressString;
+       HashString addressString;
        if (!name || strlen(name) == 0) {
                status_t error = fAddress.GetString(&addressString, false);
                if (error != B_OK)
@@ -144,7 +146,7 @@
 status_t
 ExtendedServerInfo::_AddShare(const ShareInfo* info)
 {
-       ExtendedShareInfo* extendedInfo = new(nothrow) ExtendedShareInfo;
+       ExtendedShareInfo* extendedInfo = new(std::nothrow) ExtendedShareInfo;
        if (!extendedInfo)
                return B_NO_MEMORY;
        status_t error = extendedInfo->SetTo(info);

Modified: 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ExtendedServerInfo.h
===================================================================
--- 
haiku/trunk/src/tests/add-ons/kernel/file_systems/userlandfs/r5/src/test/netfs/client/ExtendedServerInfo.h
  2010-01-13 09:32:50 UTC (rev 35042)
+++ 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/ExtendedServerInfo.h   
    2010-01-14 21:56:16 UTC (rev 35081)
@@ -3,16 +3,17 @@
 #ifndef NET_FS_EXTENDED_SERVER_INFO_H
 #define NET_FS_EXTENDED_SERVER_INFO_H
 
+#include <HashString.h>
+#include <Referenceable.h>
+
 #include "NetAddress.h"
-#include "String.h"
-#include "Referencable.h"
 #include "Vector.h"
 
 class ServerInfo;
 class ShareInfo;
 
 // ExtendedShareInfo
-class ExtendedShareInfo : public Referencable {
+class ExtendedShareInfo : public BReferenceable {
 public:
                                                                
ExtendedShareInfo();
 
@@ -21,11 +22,11 @@
                        const char*                     GetShareName() const;
 
 private:
-                       String                          fShareName;
+                       HashString                      fShareName;
 };
 
 // ExtendedServerInfo
-class ExtendedServerInfo : public Referencable {
+class ExtendedServerInfo : public BReferenceable {
 public:
                                                                
ExtendedServerInfo(const NetAddress& address);
                                                                
~ExtendedServerInfo();
@@ -49,8 +50,8 @@
 
 private:
                NetAddress                              fAddress;
-               String                                  fServerName;
-               String                                  fConnectionMethod;
+               HashString                              fServerName;
+               HashString                              fConnectionMethod;
                Vector<ExtendedShareInfo*> fShareInfos;
                uint32                                  fState;
 };

Modified: haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/Jamfile
===================================================================
--- 
haiku/trunk/src/tests/add-ons/kernel/file_systems/userlandfs/r5/src/test/netfs/client/Jamfile
       2010-01-13 09:32:50 UTC (rev 35042)
+++ haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/Jamfile    
2010-01-14 21:56:16 UTC (rev 35081)
@@ -1,22 +1,23 @@
-SubDir HAIKU_TOP src tests add-ons kernel file_systems userlandfs r5 src test
-       netfs client ;
+SubDir HAIKU_TOP src add-ons kernel file_systems netfs client ;
 
-SetSubDirSupportedPlatforms r5 bone dano ;
+UsePrivateHeaders shared ;
+UsePrivateKernelHeaders ;
 
-local userlandFSTop = [ FDirName $(HAIKU_TOP) src tests add-ons kernel
-       file_systems userlandfs r5 ] ;
-local userlandFSIncludes = [ FDirName $(userlandFSTop) headers ] ;
+local userlandFSIncludes = [ FDirName $(HAIKU_TOP) headers private
+       userlandfs ] ;
 
+SubDirSysHdrs [ FDirName $(userlandFSIncludes) legacy ] ;
 SubDirSysHdrs [ FDirName $(userlandFSIncludes) public ] ;
 SubDirHdrs [ FDirName $(userlandFSIncludes) shared ] ;
-SubDirHdrs [ FDirName $(userlandFSTop) src test netfs headers
-                                         authentication_server ] ;
-SubDirHdrs [ FDirName $(userlandFSTop) src test netfs headers fs ] ;
-SubDirHdrs [ FDirName $(userlandFSTop) src test netfs headers shared ] ;
 
-SEARCH_SOURCE += [ FDirName $(userlandFSTop) src shared ] ;
-SEARCH_SOURCE += [ FDirName $(userlandFSTop) src test netfs shared ] ;
+SubDirHdrs [ FDirName $(SUBDIR) $(DOTDOT) headers authentication_server ] ;
+SubDirHdrs [ FDirName $(SUBDIR) $(DOTDOT) headers fs ] ;
+SubDirHdrs [ FDirName $(SUBDIR) $(DOTDOT) headers shared ] ;
 
+SEARCH_SOURCE += [ FDirName $(SUBDIR) $(DOTDOT) shared ] ;
+SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src add-ons kernel file_systems
+       userlandfs shared ] ;
+
 DEFINES += USER=1 ;
 DEFINES += DEBUG_APP="\\\"netfs\\\"" ;
 
@@ -27,10 +28,10 @@
 }
 
 Addon <test>netfs
-       : Debug.cpp
-         Locker.cpp
+       : DebugSupport.cpp
+#        Locker.cpp
          ObjectTracker.cpp
-         Referencable.cpp
+#        Referencable.cpp
 
          AbstractConnection.cpp
          AttrDirInfo.cpp
@@ -44,7 +45,7 @@
          FSObject.cpp
          InsecureChannel.cpp
          InsecureConnection.cpp
-         KMessage.cpp
+#        KMessage.cpp
          NetAddress.cpp
          NetFSDefs.cpp
          NodeInfo.cpp
@@ -86,6 +87,6 @@
          VolumeEvent.cpp
          VolumeManager.cpp
 
-       : <test>UserlandFSServer
-         $(TARGET_NETWORK_LIBS)
+       : be libuserlandfs_beos_kernel.so
+         $(TARGET_NETWORK_LIBS) $(TARGET_LIBSUPC++) libshared.a
 ;

Modified: 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/QueryIterator.cpp
===================================================================
--- 
haiku/trunk/src/tests/add-ons/kernel/file_systems/userlandfs/r5/src/test/netfs/client/QueryIterator.cpp
     2010-01-13 09:32:50 UTC (rev 35042)
+++ haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/QueryIterator.cpp  
2010-01-14 21:56:16 UTC (rev 35081)
@@ -4,10 +4,11 @@
 
 // constructor
 QueryIterator::QueryIterator(Volume* volume)
-       : Referencable(false),
-         fVolume(volume),
-         fParentIterator(NULL),
-         fVolumeLink()
+       :
+       BReferenceable(false),
+       fVolume(volume),
+       fParentIterator(NULL),
+       fVolumeLink()
 {
 }
 
@@ -83,7 +84,7 @@
 void
 HierarchicalQueryIterator::RewindSubIterator()
 {
-       fCurrentSubIterator = fSubIterators.GetFirst();
+       fCurrentSubIterator = fSubIterators.First();
 }
 
 // AddSubIterator
@@ -115,9 +116,9 @@
 // RemoveAllSubIterators
 void
 HierarchicalQueryIterator::RemoveAllSubIterators(
-       DLList<QueryIterator>& subIterators)
+       DoublyLinkedList<QueryIterator>& subIterators)
 {
-       while (QueryIterator* iterator = fSubIterators.GetFirst()) {
+       while (QueryIterator* iterator = fSubIterators.First()) {
                RemoveSubIterator(iterator);
                subIterators.Insert(iterator);
        }

Modified: 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/QueryIterator.h
===================================================================
--- 
haiku/trunk/src/tests/add-ons/kernel/file_systems/userlandfs/r5/src/test/netfs/client/QueryIterator.h
       2010-01-13 09:32:50 UTC (rev 35042)
+++ haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/QueryIterator.h    
2010-01-14 21:56:16 UTC (rev 35081)
@@ -3,15 +3,15 @@
 #ifndef NET_FS_QUERY_ITERATOR_H
 #define NET_FS_QUERY_ITERATOR_H
 
-#include "DLList.h"
-#include "Referencable.h"
+#include <Referenceable.h>
+#include <util/DoublyLinkedList.h>
 
 class HierarchicalQueryIterator;
 class Volume;
 
 // QueryIterator
-class QueryIterator : public Referencable,
-       public DLListLinkImpl<QueryIterator> {
+class QueryIterator : public BReferenceable,
+       public DoublyLinkedListLinkImpl<QueryIterator> {
 public:
                                                                
QueryIterator(Volume* volume);
        virtual                                         ~QueryIterator();
@@ -32,7 +32,7 @@
 private:
                        Volume*                         fVolume;
                        HierarchicalQueryIterator* fParentIterator;
-                       DLListLink<QueryIterator> fVolumeLink;
+                       DoublyLinkedListLink<QueryIterator> fVolumeLink;
 };
 
 // HierarchicalQueryIterator
@@ -47,21 +47,23 @@
                        void                            
AddSubIterator(QueryIterator* subIterator);
                        void                            
RemoveSubIterator(QueryIterator* subIterator);
                        void                            RemoveAllSubIterators(
-                                                                       
DLList<QueryIterator>& subIterators);
+                                                                       
DoublyLinkedList<QueryIterator>&
+                                                                               
subIterators);
 
 private:
-                       DLList<QueryIterator> fSubIterators;
+                       DoublyLinkedList<QueryIterator> fSubIterators;
                        QueryIterator*          fCurrentSubIterator;
 };
 
 // GetVolumeLink
 struct QueryIterator::GetVolumeLink {
-       DLListLink<QueryIterator>* operator()(QueryIterator* iterator) const
+       DoublyLinkedListLink<QueryIterator>* operator()(
+               QueryIterator* iterator) const
        {
                return &iterator->fVolumeLink;
        }
 
-       const DLListLink<QueryIterator>* operator()(
+       const DoublyLinkedListLink<QueryIterator>* operator()(
                const QueryIterator* iterator) const
        {
                return &iterator->fVolumeLink;

Modified: 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/QueryManager.cpp
===================================================================
--- 
haiku/trunk/src/tests/add-ons/kernel/file_systems/userlandfs/r5/src/test/netfs/client/QueryManager.cpp
      2010-01-13 09:32:50 UTC (rev 35042)
+++ haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/QueryManager.cpp   
2010-01-14 21:56:16 UTC (rev 35081)
@@ -4,15 +4,17 @@
 
 #include <fsproto.h>
 
-#include "AutoLocker.h"
-#include "Debug.h"
-#include "HashMap.h"
+#include <AutoLocker.h>
+#include <HashMap.h>
+
+#include "DebugSupport.h"
 #include "Locker.h"
 #include "QueryManager.h"
 #include "Volume.h"
 #include "VolumeManager.h"
 
-typedef DLList<QueryIterator, QueryIterator::GetVolumeLink> IteratorList;
+typedef DoublyLinkedList<QueryIterator, QueryIterator::GetVolumeLink>
+       IteratorList;
 
 // IteratorMap
 struct QueryManager::IteratorMap : HashMap<HashKey64<vnode_id>, IteratorList*> 
{
@@ -47,7 +49,7 @@
                return fLock.Sem();
 
        // allocate iterator map
-       fIterators = new(nothrow) IteratorMap;
+       fIterators = new(std::nothrow) IteratorMap;
        if (!fIterators)
                return B_NO_MEMORY;
        status_t error = fIterators->InitCheck();
@@ -71,7 +73,7 @@
        IteratorList* iteratorList = fIterators->Get(nodeID);
        if (!iteratorList) {
                // no list yet: create one
-               iteratorList = new(nothrow) IteratorList;
+               iteratorList = new(std::nothrow) IteratorList;
                if (!iteratorList)
                        return B_NO_MEMORY;
 
@@ -174,7 +176,7 @@
                // last reference removed: remove the iterator
 
                // remove its subiterators (if any)
-               DLList<QueryIterator> subIterators;
+               DoublyLinkedList<QueryIterator> subIterators;
                if (HierarchicalQueryIterator* hIterator
                                = 
dynamic_cast<HierarchicalQueryIterator*>(iterator)) {
                        hIterator->RemoveAllSubIterators(subIterators);
@@ -193,13 +195,13 @@
                        iteratorList->Remove(iterator);
 
                        // if the list is empty, remove it completely
-                       if (!iteratorList->GetFirst()) {
+                       if (!iteratorList->First()) {
                                fIterators->Remove(nodeID);
                                delete iteratorList;
                        }
                } else {
-                       ERROR(("QueryManager::PutIterator(): ERROR: No iterator 
list "
-                               "for volume %p!\n", iterator->GetVolume()));
+                       ERROR("QueryManager::PutIterator(): ERROR: No iterator 
list "
+                               "for volume %p!\n", iterator->GetVolume());
                }
 
                // free the iterator and surrender its volume reference
@@ -209,7 +211,7 @@
                volume->PutVolume();
 
                // put the subiterators
-               while (QueryIterator* subIterator = subIterators.GetFirst()) {
+               while (QueryIterator* subIterator = subIterators.First()) {
                        subIterators.Remove(subIterator);
                        PutIterator(subIterator);
                }
@@ -228,12 +230,12 @@
 
        vnode_id nodeID = volume->GetRootID();
        IteratorList iterators;
-       DLList<QueryIterator> subIterators;
+       DoublyLinkedList<QueryIterator> subIterators;
        AutoLocker<Locker> locker(fLock);
        if (IteratorList* iteratorList = fIterators->Get(nodeID)) {
                // Unset the parent of all iterators and remove one reference.
                // If the iterators are unreference, remove them.
-               QueryIterator* iterator = iteratorList->GetFirst();
+               QueryIterator* iterator = iteratorList->First();
                while (iterator) {
                        QueryIterator* nextIterator = 
iteratorList->GetNext(iterator);
 
@@ -259,7 +261,7 @@
                }
 
                // if the list is empty now, remove it completely
-               if (!iteratorList->GetFirst()) {
+               if (!iteratorList->First()) {
                        fIterators->Remove(nodeID);
                        delete iteratorList;
                }
@@ -267,14 +269,14 @@
                // free the iterators we have removed and surrender their volume
                // references
                locker.Unlock();
-               while (QueryIterator* iterator = iterators.GetFirst()) {
+               while (QueryIterator* iterator = iterators.First()) {
                        iterators.Remove(iterator);
                        volume->FreeQueryIterator(iterator);
                        volume->PutVolume();
                }
 
                // put the subiterators
-               while (QueryIterator* subIterator = subIterators.GetFirst()) {
+               while (QueryIterator* subIterator = subIterators.First()) {
                        subIterators.Remove(subIterator);
                        PutIterator(subIterator);
                }

Modified: 
haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/RootVolume.cpp
===================================================================
--- 
haiku/trunk/src/tests/add-ons/kernel/file_systems/userlandfs/r5/src/test/netfs/client/RootVolume.cpp
        2010-01-13 09:32:50 UTC (rev 35042)
+++ haiku/trunk/src/add-ons/kernel/file_systems/netfs/client/RootVolume.cpp     
2010-01-14 21:56:16 UTC (rev 35081)
@@ -1,14 +1,16 @@
 // RootVolume.cpp
 
+#include "RootVolume.h"
+
 #include <new>
 
-#include "AutoLocker.h"
+#include <AutoLocker.h>
+
 #include "Compatibility.h"
-#include "Debug.h"
+#include "DebugSupport.h"
 #include "ExtendedServerInfo.h"
 #include "NetAddress.h"
 #include "netfs_ioctl.h"
-#include "RootVolume.h"
 #include "ServerVolume.h"

[... truncated: 5710 lines follow ...]

Other related posts:

  • » [haiku-commits] r35081 - in haiku/trunk/src/add-ons/kernel/file_systems: . netfs netfs/authentication_server netfs/client netfs/headers/fs ... - superstippi