17c478bd9Sstevel@tonic-gate /* 2*c227543fSJohn Sonnenschein * Copyright (c) 2002, 2007, Oracle and/or its affiliates. All rights reserved. 37c478bd9Sstevel@tonic-gate */ 47c478bd9Sstevel@tonic-gate /* 57c478bd9Sstevel@tonic-gate * Task.xs contains XS wrappers for the task maniplulation functions. 67c478bd9Sstevel@tonic-gate */ 77c478bd9Sstevel@tonic-gate 87c478bd9Sstevel@tonic-gate /* Solaris includes. */ 97c478bd9Sstevel@tonic-gate #include <sys/task.h> 107c478bd9Sstevel@tonic-gate 117c478bd9Sstevel@tonic-gate /* Perl includes. */ 127c478bd9Sstevel@tonic-gate #include "EXTERN.h" 137c478bd9Sstevel@tonic-gate #include "perl.h" 147c478bd9Sstevel@tonic-gate #include "XSUB.h" 157c478bd9Sstevel@tonic-gate 167c478bd9Sstevel@tonic-gate /* 177c478bd9Sstevel@tonic-gate * The XS code exported to perl is below here. Note that the XS preprocessor 187c478bd9Sstevel@tonic-gate * has its own commenting syntax, so all comments from this point on are in 197c478bd9Sstevel@tonic-gate * that form. 207c478bd9Sstevel@tonic-gate */ 217c478bd9Sstevel@tonic-gate 227c478bd9Sstevel@tonic-gate MODULE = Sun::Solaris::Task PACKAGE = Sun::Solaris::Task 237c478bd9Sstevel@tonic-gate PROTOTYPES: ENABLE 247c478bd9Sstevel@tonic-gate 257c478bd9Sstevel@tonic-gate # 267c478bd9Sstevel@tonic-gate # Define any constants that need to be exported. By doing it this way we can 277c478bd9Sstevel@tonic-gate # avoid the overhead of using the DynaLoader package, and in addition constants 287c478bd9Sstevel@tonic-gate # defined using this mechanism are eligible for inlining by the perl 297c478bd9Sstevel@tonic-gate # interpreter at compile time. 307c478bd9Sstevel@tonic-gate # 317c478bd9Sstevel@tonic-gate BOOT: 327c478bd9Sstevel@tonic-gate { 337c478bd9Sstevel@tonic-gate HV *stash; 347c478bd9Sstevel@tonic-gate 357c478bd9Sstevel@tonic-gate stash = gv_stashpv("Sun::Solaris::Task", TRUE); 367c478bd9Sstevel@tonic-gate newCONSTSUB(stash, "TASK_NORMAL", newSViv(TASK_NORMAL)); 377c478bd9Sstevel@tonic-gate newCONSTSUB(stash, "TASK_FINAL", newSViv(TASK_FINAL)); 38532877c4Srd newCONSTSUB(stash, "TASK_PROJ_PURGE", newSViv(TASK_PROJ_PURGE)); 397c478bd9Sstevel@tonic-gate } 407c478bd9Sstevel@tonic-gate 417c478bd9Sstevel@tonic-gate taskid_t 427c478bd9Sstevel@tonic-gate settaskid(project, flags) 437c478bd9Sstevel@tonic-gate projid_t project 447c478bd9Sstevel@tonic-gate int flags 457c478bd9Sstevel@tonic-gate 467c478bd9Sstevel@tonic-gate taskid_t 477c478bd9Sstevel@tonic-gate gettaskid() 487c478bd9Sstevel@tonic-gate 49