Server support for cursor with alpha
diff --git a/common/rfb/SMsgWriter.h b/common/rfb/SMsgWriter.h
index a516e10..548b8e8 100644
--- a/common/rfb/SMsgWriter.h
+++ b/common/rfb/SMsgWriter.h
@@ -80,6 +80,7 @@
     // immediately. 
     bool writeSetCursor();
     bool writeSetXCursor();
+    bool writeSetCursorWithAlpha();
 
     // needFakeUpdate() returns true when an immediate update is needed in
     // order to flush out pseudo-rectangles to the client.
@@ -127,6 +128,9 @@
     void writeSetXCursorRect(int width, int height,
                              int hotspotX, int hotspotY,
                              const void* data, const void* mask);
+    void writeSetCursorWithAlphaRect(int width, int height,
+                                     int hotspotX, int hotspotY,
+                                     const rdr::U8* data);
 
     ConnParams* cp;
     rdr::OutStream* os;
@@ -140,6 +144,7 @@
     bool needLastRect;
     bool needSetCursor;
     bool needSetXCursor;
+    bool needSetCursorWithAlpha;
 
     typedef struct {
       rdr::U16 reason, result;