Index: trunk/ippTools/src/pstamptool.c
===================================================================
--- trunk/ippTools/src/pstamptool.c	(revision 16527)
+++ trunk/ippTools/src/pstamptool.c	(revision 16544)
@@ -108,9 +108,14 @@
 
     psString lastFileset = psMetadataLookupStr(&status, config->args, "-last_fileset");
+    psString state = psMetadataLookupStr(&status, config->args, "-state");
+    if (!state) {
+        state = "enabled";
+    }
 
     if (!pstampDataStoreInsert(config->dbh,
             0,
             uri,
-            lastFileset
+            lastFileset,
+            state
         )) {
         psError(PS_ERR_UNKNOWN, false, "database error");
@@ -182,14 +187,34 @@
         return false;
     }
-    if (!lastFileset) {
-        psError(PS_ERR_UNKNOWN, true, "-last_fileset is required");
-        return false;
-    }
-
-    char *query ="UPDATE pstampDataStore"
-                 " SET lastFileset = '%s'"
-                 " WHERE ds_id = '%s'";
-
-    if (!p_psDBRunQuery(config->dbh, query, lastFileset, ds_id)) {
+    psString state = psMetadataLookupStr(&status, config->args, "-state");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -state");
+        return false;
+    }
+
+    if (!state && !lastFileset) {
+        psError(PS_ERR_UNKNOWN, true, "one of -last_fileset or -state is required");
+        return false;
+    }
+
+    char *query = NULL;
+    bool needComma = false;
+    
+    psStringAppend(&query, "UPDATE pstampDataStore SET");
+
+    if (lastFileset) {
+        psStringAppend(&query, " lastFileset = '%s'", lastFileset);
+        needComma = true;
+    }
+
+    if (state) {
+        psStringAppend(&query, "%s state = '%s'", needComma ? "," : " ",
+            state);
+        needComma = true; // be ready in case we add another field
+    }
+                
+    psStringAppend(&query, " WHERE ds_id = '%s'", ds_id);
+
+    if (!p_psDBRunQuery(config->dbh, query)) {
         psError(PS_ERR_UNKNOWN, false, "database error");
         psFree(query);
Index: trunk/ippTools/src/pstamptoolConfig.c
===================================================================
--- trunk/ippTools/src/pstamptoolConfig.c	(revision 16527)
+++ trunk/ippTools/src/pstamptoolConfig.c	(revision 16544)
@@ -49,4 +49,6 @@
     psMetadataAddStr(adddatastoreArgs, PS_LIST_TAIL, "-last_fileset", 0,
             "define storage uri", NULL);
+    psMetadataAddStr(adddatastoreArgs, PS_LIST_TAIL, "-state", 0,
+            "define storage uri", NULL);
     
     // -datastore
@@ -60,4 +62,6 @@
             "define ds_id", NULL); 
     psMetadataAddStr(moddatastoreArgs, PS_LIST_TAIL, "-last_fileset", 0,
+            "define storage uri", NULL);
+    psMetadataAddStr(moddatastoreArgs, PS_LIST_TAIL, "-state", 0,
             "define storage uri", NULL);
 
@@ -123,6 +127,6 @@
     psMetadataAddStr(processedjobArgs, PS_LIST_TAIL, "-state", 0,
             "new state", NULL); 
-    psMetadataAddStr(processedjobArgs, PS_LIST_TAIL, "-status", 0,
-            "new status", NULL); 
+    psMetadataAddStr(processedjobArgs, PS_LIST_TAIL, "-result", 0,
+            "new result", NULL); 
 
 #define PXTOOL_MODE(option, modeval, argset) \
