ftp.nice.ch/pub/next/connectivity/protocol/PPPMonitor.1.16.NIHS.bs.tar.gz#/PPPMonitor1.16/Source/ExecRunCommand.h

This is ExecRunCommand.h in view mode; [Download] [Up]

// -------------------------------------------------------------------------------------
// ExecRunCommand.h
// (Indent:4, Tabs:4)
// -------------------------------------------------------------------------------------
// Copyright 1996 Persistent Technologies, Inc. - all rights reserved
// -------------------------------------------------------------------------------------
// This source code comes with no warranty of any kind, and the user assumes all 
// responsibility for its use.
// -------------------------------------------------------------------------------------
#import <objc/Object.h>

// -------------------------------------------------------------------------------------
// errors passed by 'commandDidComplete:withError:' via 'runCommand:...'
// Note: these codes may be shared by the running command which executes an exit(#)
#define			RUNCMD_STOPPED			0x100	// command stopped/aborted
#define			RUNCMD_SUCCESS			0x000	// executed/completed successfully
#define			RUNCMD_USER				0x0FF	// (255) cannot switch to user
#define			RUNCMD_EXEC				0x07F	// (127) cannot execute execl shell

/* ExecRunCommand delegate */
@protocol ExecRunCommand_Delegate
- (void)commandOutput:(id)execId buffer:(const char*)buffer len:(int)len;
- (void)commandDidComplete:(id)execId withError:(int)errorCode;
@end

// -------------------------------------------------------------------------------------
// Command execution controller
@interface ExecRunCommand : Object
{
	int					cmdChild;					// command execution
	int					inputDescriptor;			// input pipe
	id					delegate;					// delegate
	int					tag;						// tag
}
+ runCommand:(const char*)command user:(const char*)user output:(id)theDelegate;
+ runCommand:(const char*)command output:(id)theDelegate;
+ (int)system:(const char*)command user:(const char*)user output:(id)theDelegate;
+ (int)system:(const char*)command user:(const char*)user;
+ (int)system:(const char*)command;
- setTag:(int)tag;
- (int)tag;
- (BOOL)isActive;
- setDelegate:(id)theDelegate;
- (id)delegate;
- interruptCommand;
- terminateCommand;
- killCommand;
// -------------------------------------------------------------------------------------
+ (BOOL)isRunningAsRoot;
//  returns true if effective user is 'root'
//
// -------------------------------------------------------------------------------------
- (void)commandOutput:(const char*)buffer len:(int)len;
- (void)commandDidCompleteWithError:(int)errorCode;
//  Provides support for ExecServer.
//
// -------------------------------------------------------------------------------------
@end

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.