|
@@ -5,15 +5,12 @@ import android.content.Context;
|
|
import android.net.DhcpInfo;
|
|
import android.net.DhcpInfo;
|
|
import android.net.wifi.WifiManager;
|
|
import android.net.wifi.WifiManager;
|
|
|
|
|
|
-import org.alfresco.jlan.app.CifsOnlyXMLServerConfiguration;
|
|
+import org.alfresco.jlan.app.XMLServerConfiguration;
|
|
-import org.alfresco.jlan.netbios.server.AddNameListener;
|
|
|
|
-import org.alfresco.jlan.netbios.server.NetBIOSNameEvent;
|
|
|
|
import org.alfresco.jlan.netbios.server.NetBIOSNameServer;
|
|
import org.alfresco.jlan.netbios.server.NetBIOSNameServer;
|
|
import org.alfresco.jlan.server.SessionListener;
|
|
import org.alfresco.jlan.server.SessionListener;
|
|
import org.alfresco.jlan.server.SrvSession;
|
|
import org.alfresco.jlan.server.SrvSession;
|
|
import org.alfresco.jlan.server.config.InvalidConfigurationException;
|
|
import org.alfresco.jlan.server.config.InvalidConfigurationException;
|
|
import org.alfresco.jlan.server.filesys.FileListener;
|
|
import org.alfresco.jlan.server.filesys.FileListener;
|
|
-import org.alfresco.jlan.server.filesys.FilesystemsConfigSection;
|
|
|
|
import org.alfresco.jlan.server.filesys.NetworkFile;
|
|
import org.alfresco.jlan.server.filesys.NetworkFile;
|
|
import org.alfresco.jlan.smb.server.CIFSConfigSection;
|
|
import org.alfresco.jlan.smb.server.CIFSConfigSection;
|
|
import org.alfresco.jlan.smb.server.SMBServer;
|
|
import org.alfresco.jlan.smb.server.SMBServer;
|
|
@@ -23,20 +20,23 @@ import java.io.InputStreamReader;
|
|
import java.net.InetAddress;
|
|
import java.net.InetAddress;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
|
|
|
|
|
+import de.tudarmstadt.informatik.hostage.Handler;
|
|
import de.tudarmstadt.informatik.hostage.Listener;
|
|
import de.tudarmstadt.informatik.hostage.Listener;
|
|
import de.tudarmstadt.informatik.hostage.R;
|
|
import de.tudarmstadt.informatik.hostage.R;
|
|
|
|
+import de.tudarmstadt.informatik.hostage.logging.MessageRecord;
|
|
import de.tudarmstadt.informatik.hostage.ui.activity.MainActivity;
|
|
import de.tudarmstadt.informatik.hostage.ui.activity.MainActivity;
|
|
import de.tudarmstadt.informatik.hostage.wrapper.Packet;
|
|
import de.tudarmstadt.informatik.hostage.wrapper.Packet;
|
|
|
|
|
|
public class CIFS implements Protocol, SessionListener, FileListener{
|
|
public class CIFS implements Protocol, SessionListener, FileListener{
|
|
- private Listener mHandler;
|
|
+ private Listener mListener;
|
|
|
|
+ private Handler mHandler;
|
|
private SMBServer mSmbServer;
|
|
private SMBServer mSmbServer;
|
|
private NetBIOSNameServer mNbNameServer;
|
|
private NetBIOSNameServer mNbNameServer;
|
|
|
|
|
|
- public void initialize(Listener mHandler) {
|
|
+ public void initialize(Listener mListener) {
|
|
- this.mHandler = mHandler;
|
|
+ this.mListener = mListener;
|
|
-
|
|
+ this.mHandler = new Handler(mListener.getService(),mListener, mListener.getProtocol());
|
|
- CifsOnlyXMLServerConfiguration smbConfig = new CifsOnlyXMLServerConfiguration();
|
|
+ XMLServerConfiguration smbConfig = new XMLServerConfiguration();
|
|
|
|
|
|
try {
|
|
try {
|
|
smbConfig.loadConfiguration(new InputStreamReader(MainActivity.context.getResources().openRawResource(R.raw.jlan_config)));
|
|
smbConfig.loadConfiguration(new InputStreamReader(MainActivity.context.getResources().openRawResource(R.raw.jlan_config)));
|
|
@@ -49,8 +49,9 @@ public class CIFS implements Protocol, SessionListener, FileListener{
|
|
cifsConfig.setNetBIOSSMB(true);
|
|
cifsConfig.setNetBIOSSMB(true);
|
|
cifsConfig.setDisableNIOCode(true);
|
|
cifsConfig.setDisableNIOCode(true);
|
|
|
|
|
|
- this.mSmbServer = new SMBServer(smbConfig);
|
|
|
|
this.mNbNameServer = new NetBIOSNameServer(smbConfig);
|
|
this.mNbNameServer = new NetBIOSNameServer(smbConfig);
|
|
|
|
+
|
|
|
|
+ this.mSmbServer = new SMBServer(smbConfig);
|
|
this.mSmbServer.addSessionListener(this);
|
|
this.mSmbServer.addSessionListener(this);
|
|
this.mSmbServer.addFileListener(this);
|
|
this.mSmbServer.addFileListener(this);
|
|
|
|
|
|
@@ -85,7 +86,7 @@ public class CIFS implements Protocol, SessionListener, FileListener{
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public TALK_FIRST whoTalksFirst() {
|
|
public TALK_FIRST whoTalksFirst() {
|
|
- return null;
|
|
+ return TALK_FIRST.CLIENT;
|
|
}
|
|
}
|
|
|
|
|
|
public String toString(){
|
|
public String toString(){
|
|
@@ -99,11 +100,14 @@ public class CIFS implements Protocol, SessionListener, FileListener{
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void sessionCreated(SrvSession srvSession) {
|
|
public void sessionCreated(SrvSession srvSession) {
|
|
|
|
+ mHandler.log(MessageRecord.TYPE.RECEIVE,"SESSION CREATED");
|
|
System.out.println("---------------------- [CIFS] Session created!");
|
|
System.out.println("---------------------- [CIFS] Session created!");
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void sessionLoggedOn(SrvSession srvSession) {
|
|
public void sessionLoggedOn(SrvSession srvSession) {
|
|
|
|
+
|
|
|
|
+ mHandler.log(MessageRecord.TYPE.RECEIVE,"SESSION LOGGED ON");
|
|
System.out.println("---------------------- [CIFS] Session LoggedOn!");
|
|
System.out.println("---------------------- [CIFS] Session LoggedOn!");
|
|
}
|
|
}
|
|
|
|
|
|
@@ -114,6 +118,7 @@ public class CIFS implements Protocol, SessionListener, FileListener{
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void fileOpened(SrvSession srvSession, NetworkFile networkFile) {
|
|
public void fileOpened(SrvSession srvSession, NetworkFile networkFile) {
|
|
|
|
+ mHandler.log(MessageRecord.TYPE.RECEIVE,"FILE OPENED");
|
|
System.out.println("---------------------- [CIFS] File closed!");
|
|
System.out.println("---------------------- [CIFS] File closed!");
|
|
}
|
|
}
|
|
|
|
|
|
@@ -121,7 +126,7 @@ public class CIFS implements Protocol, SessionListener, FileListener{
|
|
WifiManager wifi = (WifiManager) MainActivity.context.getSystemService(Context.WIFI_SERVICE);
|
|
WifiManager wifi = (WifiManager) MainActivity.context.getSystemService(Context.WIFI_SERVICE);
|
|
DhcpInfo dhcp = wifi.getDhcpInfo();
|
|
DhcpInfo dhcp = wifi.getDhcpInfo();
|
|
|
|
|
|
-
|
|
+ System.out.println("DEBUG:::::IP::::"+dhcp.ipAddress);
|
|
int broadcast = (dhcp.ipAddress & dhcp.netmask) | ~dhcp.netmask;
|
|
int broadcast = (dhcp.ipAddress & dhcp.netmask) | ~dhcp.netmask;
|
|
byte[] quads = new byte[4];
|
|
byte[] quads = new byte[4];
|
|
for (int k = 0; k < 4; k++)
|
|
for (int k = 0; k < 4; k++)
|