···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <Foundation/Foundation.h>
2121+2222+void* IOPPFGetDiagProperty(void);
2323+void* IOPPFGetDiagPropertyFromDict(void);
2424+void* IOPPFGetHandler(void);
2525+void* IOPPFGetProperty(void);
2626+void* IOPPFPrintTest(void);
2727+void* IOPPFSetFanThrottleMode(void);
2828+void* IOPPFSetProperties(void);
+32
src/IOPlatformPluginFamily/src/functions.c
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+2121+#include <stdlib.h>
2222+static int verbose = 0;
2323+__attribute__((constructor)) static void initme(void) {
2424+ verbose = getenv("STUB_VERBOSE") != NULL;
2525+}
2626+void* IOPPFGetDiagProperty(void) { if (verbose) puts("STUB: IOPPFGetDiagProperty called"); return NULL; }
2727+void* IOPPFGetDiagPropertyFromDict(void) { if (verbose) puts("STUB: IOPPFGetDiagPropertyFromDict called"); return NULL; }
2828+void* IOPPFGetHandler(void) { if (verbose) puts("STUB: IOPPFGetHandler called"); return NULL; }
2929+void* IOPPFGetProperty(void) { if (verbose) puts("STUB: IOPPFGetProperty called"); return NULL; }
3030+void* IOPPFPrintTest(void) { if (verbose) puts("STUB: IOPPFPrintTest called"); return NULL; }
3131+void* IOPPFSetFanThrottleMode(void) { if (verbose) puts("STUB: IOPPFSetFanThrottleMode called"); return NULL; }
3232+void* IOPPFSetProperties(void) { if (verbose) puts("STUB: IOPPFSetProperties called"); return NULL; }
+23
src/PlugInKit/CMakeLists.txt
···11+project(PlugInKit)
22+33+set(DYLIB_COMPAT_VERSION "1.0.0")
44+set(DYLIB_CURRENT_VERSION "1.0.0")
55+66+file(GLOB PK_C src/*.c)
77+file(GLOB PK_OBJC src/*.m)
88+99+add_framework(PlugInKit
1010+ FAT
1111+ CURRENT_VERSION
1212+ PRIVATE
1313+ VERSION "A"
1414+1515+ SOURCES
1616+ ${PK_C}
1717+ ${PK_OBJC}
1818+1919+ DEPENDENCIES
2020+ system
2121+ objc
2222+ Foundation
2323+)
+22
src/PlugInKit/include/PlugInKit/PKBundle.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface PKBundle : NSObject
2121+2222+@end
+22
src/PlugInKit/include/PlugInKit/PKDaemonClient.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface PKDaemonClient : NSObject
2121+2222+@end
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface PKDiscoveryDriver : NSObject
2121+2222+@end
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface PKDiscoveryLSWatcher : NSObject
2121+2222+@end
+22
src/PlugInKit/include/PlugInKit/PKHost.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface PKHost : NSObject
2121+2222+@end
+22
src/PlugInKit/include/PlugInKit/PKHostDefaults.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface PKHostDefaults : NSUserDefaults
2121+2222+@end
+24
src/PlugInKit/include/PlugInKit/PKHostPlugIn.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PKPlugInCore.h>
2121+2222+@interface PKHostPlugIn : PKPlugInCore
2323+2424+@end
+22
src/PlugInKit/include/PlugInKit/PKManager.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface PKManager : NSObject
2121+2222+@end
+22
src/PlugInKit/include/PlugInKit/PKPlugInCore.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface PKPlugInCore : NSObject
2121+2222+@end
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface PKSandboxExtension : NSObject
2121+2222+@end
+22
src/PlugInKit/include/PlugInKit/PKService.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface PKService : NSObject
2121+2222+@end
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface PKServiceDefaults : NSUserDefaults
2121+2222+@end
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface PKServicePersonality : PKPlugInCore
2121+2222+@end
+22
src/PlugInKit/include/PlugInKit/PKXPCObject.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface PKXPCObject : NSObject
2121+2222+@end
+48
src/PlugInKit/include/PlugInKit/PlugInKit.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <Foundation/Foundation.h>
2121+2222+void* oslog(void);
2323+void* oslog_ext(void);
2424+void* oslog_ls(void);
2525+void* oslog_traffic(void);
2626+void* pkAugmentInterface(void);
2727+void* pkError(void);
2828+void* pkErrorf(void);
2929+void* pkFindProtocol(void);
3030+void* pkFindProtocols(void);
3131+void* pkIssueSandboxExtension(void);
3232+void* xpc_dictionary_get_array(void);
3333+void* xpc_dictionary_get_dictionary(void);
3434+3535+#import <PlugInKit/PKHostPlugIn.h>
3636+#import <PlugInKit/PKDiscoveryDriver.h>
3737+#import <PlugInKit/PKDiscoveryLSWatcher.h>
3838+#import <PlugInKit/PKHost.h>
3939+#import <PlugInKit/PKPlugInCore.h>
4040+#import <PlugInKit/PKServicePersonality.h>
4141+#import <PlugInKit/PKService.h>
4242+#import <PlugInKit/PKHostDefaults.h>
4343+#import <PlugInKit/PKServiceDefaults.h>
4444+#import <PlugInKit/PKDaemonClient.h>
4545+#import <PlugInKit/PKBundle.h>
4646+#import <PlugInKit/PKSandboxExtension.h>
4747+#import <PlugInKit/PKXPCObject.h>
4848+#import <PlugInKit/PKManager.h>
+32
src/PlugInKit/src/PKBundle.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKBundle
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/PlugInKit/src/PKDaemonClient.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKDaemonClient
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/PlugInKit/src/PKDiscoveryDriver.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKDiscoveryDriver
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/PlugInKit/src/PKDiscoveryLSWatcher.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKDiscoveryLSWatcher
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/PlugInKit/src/PKHost.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKHost
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/PlugInKit/src/PKHostDefaults.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKHostDefaults
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/PlugInKit/src/PKHostPlugIn.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKHostPlugIn
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/PlugInKit/src/PKManager.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKManager
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/PlugInKit/src/PKPlugInCore.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKPlugInCore
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/PlugInKit/src/PKSandboxExtension.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKSandboxExtension
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/PlugInKit/src/PKService.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKService
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/PlugInKit/src/PKServiceDefaults.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKServiceDefaults
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/PlugInKit/src/PKServicePersonality.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKServicePersonality
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/PlugInKit/src/PKXPCObject.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <PlugInKit/PlugInKit.h>
2121+2222+@implementation PKXPCObject
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+37
src/PlugInKit/src/functions.c
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+2121+#include <stdlib.h>
2222+static int verbose = 0;
2323+__attribute__((constructor)) static void initme(void) {
2424+ verbose = getenv("STUB_VERBOSE") != NULL;
2525+}
2626+void* oslog(void) { if (verbose) puts("STUB: oslog called"); return NULL; }
2727+void* oslog_ext(void) { if (verbose) puts("STUB: oslog_ext called"); return NULL; }
2828+void* oslog_ls(void) { if (verbose) puts("STUB: oslog_ls called"); return NULL; }
2929+void* oslog_traffic(void) { if (verbose) puts("STUB: oslog_traffic called"); return NULL; }
3030+void* pkAugmentInterface(void) { if (verbose) puts("STUB: pkAugmentInterface called"); return NULL; }
3131+void* pkError(void) { if (verbose) puts("STUB: pkError called"); return NULL; }
3232+void* pkErrorf(void) { if (verbose) puts("STUB: pkErrorf called"); return NULL; }
3333+void* pkFindProtocol(void) { if (verbose) puts("STUB: pkFindProtocol called"); return NULL; }
3434+void* pkFindProtocols(void) { if (verbose) puts("STUB: pkFindProtocols called"); return NULL; }
3535+void* pkIssueSandboxExtension(void) { if (verbose) puts("STUB: pkIssueSandboxExtension called"); return NULL; }
3636+void* xpc_dictionary_get_array(void) { if (verbose) puts("STUB: xpc_dictionary_get_array called"); return NULL; }
3737+void* xpc_dictionary_get_dictionary(void) { if (verbose) puts("STUB: xpc_dictionary_get_dictionary called"); return NULL; }
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface OS_object
2121+2222+@end
2323+2424+@interface OS_sysmon_object : OS_object
2525+2626+@end
+22
src/libsysmon/include/sysmon/OS_sysmon_request.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface OS_sysmon_request : OS_sysmon_object
2121+2222+@end
+22
src/libsysmon/include/sysmon/OS_sysmon_row.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface OS_sysmon_row : OS_sysmon_object
2121+2222+@end
+22
src/libsysmon/include/sysmon/OS_sysmon_table.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+@interface OS_sysmon_table : OS_sysmon_object
2121+2222+@end
+46
src/libsysmon/include/sysmon/sysmon.h
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <Foundation/Foundation.h>
2121+2222+void* sysmon_copy_process_info(void);
2323+void* sysmon_release(void);
2424+void* sysmon_request_add_attribute(void);
2525+void* sysmon_request_add_attributes(void);
2626+void* sysmon_request_alloc(void);
2727+void* sysmon_request_cancel(void);
2828+void* sysmon_request_create(void);
2929+void* sysmon_request_execute(void);
3030+void* sysmon_request_set_flags(void);
3131+void* sysmon_request_set_interval(void);
3232+void* sysmon_retain(void);
3333+void* sysmon_row_alloc(void);
3434+void* sysmon_row_apply(void);
3535+void* sysmon_row_get_value(void);
3636+void* sysmon_table_alloc(void);
3737+void* sysmon_table_apply(void);
3838+void* sysmon_table_copy_row(void);
3939+void* sysmon_table_get_count(void);
4040+void* sysmon_table_get_row(void);
4141+void* sysmon_table_get_timestamp(void);
4242+4343+#import <sysmon/OS_sysmon_object.h>
4444+#import <sysmon/OS_sysmon_request.h>
4545+#import <sysmon/OS_sysmon_table.h>
4646+#import <sysmon/OS_sysmon_row.h>
+32
src/libsysmon/src/OS_sysmon_object.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <sysmon/sysmon.h>
2121+2222+@implementation OS_sysmon_object
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/libsysmon/src/OS_sysmon_request.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <sysmon/sysmon.h>
2121+2222+@implementation OS_sysmon_request
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/libsysmon/src/OS_sysmon_row.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <sysmon/sysmon.h>
2121+2222+@implementation OS_sysmon_row
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+32
src/libsysmon/src/OS_sysmon_table.m
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+#import <sysmon/sysmon.h>
2121+2222+@implementation OS_sysmon_table
2323+2424+- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector {
2525+ return [NSMethodSignature signatureWithObjCTypes: "v@:"];
2626+}
2727+2828+- (void)forwardInvocation:(NSInvocation *)anInvocation {
2929+ NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]);
3030+}
3131+3232+@end
+45
src/libsysmon/src/sysmon.c
···11+/*
22+This file is part of Darling.
33+44+Copyright (C) 2017 Lubos Dolezel
55+66+Darling is free software: you can redistribute it and/or modify
77+it under the terms of the GNU General Public License as published by
88+the Free Software Foundation, either version 3 of the License, or
99+(at your option) any later version.
1010+1111+Darling is distributed in the hope that it will be useful,
1212+but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1414+GNU General Public License for more details.
1515+1616+You should have received a copy of the GNU General Public License
1717+along with Darling. If not, see <http://www.gnu.org/licenses/>.
1818+*/
1919+2020+2121+#include <stdlib.h>
2222+static int verbose = 0;
2323+__attribute__((constructor)) static void initme(void) {
2424+ verbose = getenv("STUB_VERBOSE") != NULL;
2525+}
2626+void* sysmon_copy_process_info(void) { if (verbose) puts("STUB: sysmon_copy_process_info called"); return NULL; }
2727+void* sysmon_release(void) { if (verbose) puts("STUB: sysmon_release called"); return NULL; }
2828+void* sysmon_request_add_attribute(void) { if (verbose) puts("STUB: sysmon_request_add_attribute called"); return NULL; }
2929+void* sysmon_request_add_attributes(void) { if (verbose) puts("STUB: sysmon_request_add_attributes called"); return NULL; }
3030+void* sysmon_request_alloc(void) { if (verbose) puts("STUB: sysmon_request_alloc called"); return NULL; }
3131+void* sysmon_request_cancel(void) { if (verbose) puts("STUB: sysmon_request_cancel called"); return NULL; }
3232+void* sysmon_request_create(void) { if (verbose) puts("STUB: sysmon_request_create called"); return NULL; }
3333+void* sysmon_request_execute(void) { if (verbose) puts("STUB: sysmon_request_execute called"); return NULL; }
3434+void* sysmon_request_set_flags(void) { if (verbose) puts("STUB: sysmon_request_set_flags called"); return NULL; }
3535+void* sysmon_request_set_interval(void) { if (verbose) puts("STUB: sysmon_request_set_interval called"); return NULL; }
3636+void* sysmon_retain(void) { if (verbose) puts("STUB: sysmon_retain called"); return NULL; }
3737+void* sysmon_row_alloc(void) { if (verbose) puts("STUB: sysmon_row_alloc called"); return NULL; }
3838+void* sysmon_row_apply(void) { if (verbose) puts("STUB: sysmon_row_apply called"); return NULL; }
3939+void* sysmon_row_get_value(void) { if (verbose) puts("STUB: sysmon_row_get_value called"); return NULL; }
4040+void* sysmon_table_alloc(void) { if (verbose) puts("STUB: sysmon_table_alloc called"); return NULL; }
4141+void* sysmon_table_apply(void) { if (verbose) puts("STUB: sysmon_table_apply called"); return NULL; }
4242+void* sysmon_table_copy_row(void) { if (verbose) puts("STUB: sysmon_table_copy_row called"); return NULL; }
4343+void* sysmon_table_get_count(void) { if (verbose) puts("STUB: sysmon_table_get_count called"); return NULL; }
4444+void* sysmon_table_get_row(void) { if (verbose) puts("STUB: sysmon_table_get_row called"); return NULL; }
4545+void* sysmon_table_get_timestamp(void) { if (verbose) puts("STUB: sysmon_table_get_timestamp called"); return NULL; }