Wifly UDP parsing

Something like this:

void loop() {
    static char buffer[30];
    static int bufferIndex = 0;

    while (wifly.available()) {
        buffer[bufferIndex++] = wifly.read();
        if (buffer[bufferIndex-1] == '\n') {
            // End Of Line character received
            buffer[bufferIndex++] = '\0';  // Add a terminating null character
            processString(buffer);  // You write this function to process the message
            bufferIndex = 0;
         }

     if (bufferIndex > 29) // Buffer Overflow
         bufferIndex = 0;
}

void processString(char *parameter){
    while (*parameter != NULL) {   
      	if (parameter[0] == "r") {
            int value = atoi(parameter+1);
            analogWrite(9, value);
       }
	else if (parameter[0] == "g")) {
            int value = atoi(parameter+1);
            analogWrite(10, value);
       }
       	else if (parameter[0] == "b"))  {
            int value = atoi(parameter+1);
            analogWrite(11, value);
       }
    parameter++;
    }
}