Loading services/core/java/com/android/server/NativeDaemonConnector.java +4 −2 Original line number Diff line number Diff line Loading @@ -177,6 +177,7 @@ final class NativeDaemonConnector implements Runnable, Handler.Callback, Watchdo mCallbacks.onDaemonConnected(); FileDescriptor[] fdList = null; byte[] buffer = new byte[BUFFER_SIZE]; int start = 0; Loading @@ -186,6 +187,7 @@ final class NativeDaemonConnector implements Runnable, Handler.Callback, Watchdo loge("got " + count + " reading with start = " + start); break; } fdList = socket.getAncillaryFileDescriptors(); // Add our starting point to the count and reset the start. count += start; Loading @@ -200,8 +202,8 @@ final class NativeDaemonConnector implements Runnable, Handler.Callback, Watchdo boolean releaseWl = false; try { final NativeDaemonEvent event = NativeDaemonEvent.parseRawEvent( rawEvent); final NativeDaemonEvent event = NativeDaemonEvent.parseRawEvent(rawEvent, fdList); log("RCV <- {" + event + "}"); Loading services/core/java/com/android/server/NativeDaemonEvent.java +10 −3 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.server; import android.util.Slog; import com.google.android.collect.Lists; import java.io.FileDescriptor; import java.util.ArrayList; /** Loading @@ -35,15 +36,17 @@ public class NativeDaemonEvent { private final String mRawEvent; private final String mLogMessage; private String[] mParsed; private FileDescriptor[] mFdList; private NativeDaemonEvent(int cmdNumber, int code, String message, String rawEvent, String logMessage) { String rawEvent, String logMessage, FileDescriptor[] fdList) { mCmdNumber = cmdNumber; mCode = code; mMessage = message; mRawEvent = rawEvent; mLogMessage = logMessage; mParsed = null; mFdList = fdList; } static public final String SENSITIVE_MARKER = "{{sensitive}}"; Loading @@ -60,6 +63,10 @@ public class NativeDaemonEvent { return mMessage; } public FileDescriptor[] getFileDescriptors() { return mFdList; } @Deprecated public String getRawEvent() { return mRawEvent; Loading Loading @@ -127,7 +134,7 @@ public class NativeDaemonEvent { * @throws IllegalArgumentException when line doesn't match format expected * from native side. */ public static NativeDaemonEvent parseRawEvent(String rawEvent) { public static NativeDaemonEvent parseRawEvent(String rawEvent, FileDescriptor[] fdList) { final String[] parsed = rawEvent.split(" "); if (parsed.length < 2) { throw new IllegalArgumentException("Insufficient arguments"); Loading Loading @@ -164,7 +171,7 @@ public class NativeDaemonEvent { final String message = rawEvent.substring(skiplength); return new NativeDaemonEvent(cmdNumber, code, message, rawEvent, logMessage); return new NativeDaemonEvent(cmdNumber, code, message, rawEvent, logMessage, fdList); } /** Loading Loading
services/core/java/com/android/server/NativeDaemonConnector.java +4 −2 Original line number Diff line number Diff line Loading @@ -177,6 +177,7 @@ final class NativeDaemonConnector implements Runnable, Handler.Callback, Watchdo mCallbacks.onDaemonConnected(); FileDescriptor[] fdList = null; byte[] buffer = new byte[BUFFER_SIZE]; int start = 0; Loading @@ -186,6 +187,7 @@ final class NativeDaemonConnector implements Runnable, Handler.Callback, Watchdo loge("got " + count + " reading with start = " + start); break; } fdList = socket.getAncillaryFileDescriptors(); // Add our starting point to the count and reset the start. count += start; Loading @@ -200,8 +202,8 @@ final class NativeDaemonConnector implements Runnable, Handler.Callback, Watchdo boolean releaseWl = false; try { final NativeDaemonEvent event = NativeDaemonEvent.parseRawEvent( rawEvent); final NativeDaemonEvent event = NativeDaemonEvent.parseRawEvent(rawEvent, fdList); log("RCV <- {" + event + "}"); Loading
services/core/java/com/android/server/NativeDaemonEvent.java +10 −3 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.server; import android.util.Slog; import com.google.android.collect.Lists; import java.io.FileDescriptor; import java.util.ArrayList; /** Loading @@ -35,15 +36,17 @@ public class NativeDaemonEvent { private final String mRawEvent; private final String mLogMessage; private String[] mParsed; private FileDescriptor[] mFdList; private NativeDaemonEvent(int cmdNumber, int code, String message, String rawEvent, String logMessage) { String rawEvent, String logMessage, FileDescriptor[] fdList) { mCmdNumber = cmdNumber; mCode = code; mMessage = message; mRawEvent = rawEvent; mLogMessage = logMessage; mParsed = null; mFdList = fdList; } static public final String SENSITIVE_MARKER = "{{sensitive}}"; Loading @@ -60,6 +63,10 @@ public class NativeDaemonEvent { return mMessage; } public FileDescriptor[] getFileDescriptors() { return mFdList; } @Deprecated public String getRawEvent() { return mRawEvent; Loading Loading @@ -127,7 +134,7 @@ public class NativeDaemonEvent { * @throws IllegalArgumentException when line doesn't match format expected * from native side. */ public static NativeDaemonEvent parseRawEvent(String rawEvent) { public static NativeDaemonEvent parseRawEvent(String rawEvent, FileDescriptor[] fdList) { final String[] parsed = rawEvent.split(" "); if (parsed.length < 2) { throw new IllegalArgumentException("Insufficient arguments"); Loading Loading @@ -164,7 +171,7 @@ public class NativeDaemonEvent { final String message = rawEvent.substring(skiplength); return new NativeDaemonEvent(cmdNumber, code, message, rawEvent, logMessage); return new NativeDaemonEvent(cmdNumber, code, message, rawEvent, logMessage, fdList); } /** Loading